首先,這不是一個綁定或一般問題。該示例在多臺機器上正常工作,但只有一臺! 我在我的函數中添加了一條線索,這樣我可以看到何時調用了屬性的集合。 SelectedItem和SelectedIndex都不適用於帶Elo觸摸屏的Windows 7 Embedded Standard 。 我認爲「嵌入」或「觸摸屏」是失敗的原因。WPF綁定:SelectedItem和SelectedIndex不工作
有沒有人有想法?
這裏是我的示例代碼:
<ListBox ItemsSource="{Binding Source={StaticResource DialogProperties}, Path=ListArticle}"
SelectedIndex="{Binding Source={StaticResource DialogProperties}, Path=ItemIndex, Mode=TwoWay}"
SelectedItem="{Binding Source={StaticResource DialogProperties}, Path=Article, Mode=TwoWay}"
>
這個視圖模型:
public IEnumerable<Article> ListArticle { get; private set; }
public Article _Article = null;
public Article Article
{
get { return _Article; }
set {
Trace.WriteLine(String.Format("SetArticle..");
_Article = value;
}
}
public int _ItemIndex = 0;
public int ItemIndex
{
get { return _ItemIndex; }
set {
Trace.WriteLine(String.Format("SetItemIndex");
_ItemIndex = value;
}
}
更新(2015年9月14日): 我添加SelectionChanged事件處理程序列表框,它兩臺機器都如預期的那樣發生火災。
請注意:我可以很容易地創建一個解決方法來解決這個問題。但是我使用的是「Infragistics WPF框架」,並且無法修復或檢查每個事件!
更新(09/16/2015): 所有testet環境都使用最新的.NET Framwork 4.5。
什麼是綁定的SelectedIndex,當你已經綁定的SelectedItem的原因是什麼? – Clemens
您確定該項目已被選中,而不僅僅是集中? – Wouter
@Clemens:只是爲了展示這兩個作品。 – Mathias