2011-06-02 214 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