2012-07-17 22 views
0

我有一個包含組合框的c#WPF項目。 我有幾個項目在「選擇」,如果我選擇其中的任何一個,那麼值是正確的(第一個項目爲0,第二個項目爲1,因此第四個) 我如何將第一個項目添加爲「all 「,如果用戶選擇」全部「,那麼值是」-1「? 現在「所有」是第一項,因此,將其設置爲「0」值Combobox selecteditem如果默認的「所有」值應該是-1

感謝的人誰使用可以幫助,沒有什麼選擇嘗試

+0

你永遠不會具有指數= -1獲得的項目。所選索引爲-1意味着沒有項目被選中。只需將您的ComboBox保持原樣,使用索引0處的「all」項,然後測試選定的索引= 0。 – 2012-07-17 14:04:08

回答

1

值-1狀態的SelectedIndex-1作爲你的價值。如果您參考xaml中的SelectedIndex,則需要一些converter的綁定。

1

而不是使用SelectedIndex使用SelectedItem並檢查它的「All」值。

例子:

視圖模型

public class MyViewModel 
{ 
    public ObservableCollection<string> TheItems { get; set;} 
    public string TheSelectedItem { get; set; } 

    public MyViewModel() 
    { 
     TheItems = new ObservableCollection<string>(); 
     TheItems.Add("All"); 
     //Adding all the other value 

    } 

    public void SomeMethod() 
    { 
     if(TheSelectedItem=="All") 
     { 
      //Do whatever needs to be done 
     } 
    } 
} 

查看

<ListView ItemsSource="{Binding TheItems}" SelectedItem="{Binding TheSelectedItem}"/> 
+0

如果它是「全部」價值?我仍在學習,也許你有我需要使用的代碼?等 – 2012-07-17 13:27:15

+0

我編輯了我的答案 – 2012-07-17 13:52:41