2011-06-02 213 views
1

請你能告訴我如何綁定組合框。組合框綁定

我有組合框,Itemsource是ObservableCollection<strings>。我不會將Selected Combobox值設置爲MainObject.SomeValue,反之亦然。

這是最簡單的方法

回答

2

這裏有一個小例子。 我有兩個類:

public class Person 
    { 
     private string _name = "Test2"; 
     public String Name 
     { 
      get { return _name; } 
      set { _name = value; } 
     } 
    } 

    public class DataProvider 
    { 
     public ObservableCollection<String> Data { get; set; } 

     public DataProvider() 
     { 
      Data = new ObservableCollection<string>(); 
      Data.Add("Test"); 
      Data.Add("Test2"); 
      Data.Add("Test3"); 
      Data.Add("Test4"); 
     } 
    } 

dataProvider中提供了字符串數據組合框和人是你想要的名稱綁定的對象。這可以按如下完成:

<Grid.Resources> 
      <myNamespace:DataProvider x:Key="DataProvider"/> 
      <myNamespace:Person x:Key="Person"/> 
     </Grid.Resources> 
     <ComboBox 
      Height="25" 
      DataContext="{StaticResource DataProvider}" 
      ItemsSource="{Binding Data}" 
      SelectedItem="{Binding Name, Source={StaticResource Person}, Mode=TwoWay}"/> 

這只是一個簡單的例子。如果您不想使用字符串作爲輸入數據,請查看SelectedItem,SelectedValue,SelectedValuePath ...

這是您需要的嗎?

BR,

TJ

+0

謝謝,夥計。完美的例子 – Tiho 2011-06-02 13:47:40

+0

不客氣;) – TerenceJackson 2011-06-02 14:32:07