一、用字典给ItemsSource赋值

XMAL、

<ComboBox Name="cmb_list" Grid.Row="1" Grid.Column="1" Height="23" DisplayMemberPath="Value" SelectedValuePath="Key" SelectionChanged="cmb1_SelectionChanged"></ComboBox>

CS文件、

private void BindData()

Dictionary<int, string> dicItem = new Dictionary<int, string>();

dicItem.add(1,"北京");

dicItem.add(2,"上海");

dicItem.add(3,"广州");

cmb_list.ItemsSource =dicItem;

cmb_list.SelectIndex=0;

二、XAML 中直接绑定(此绑定很不实用)

  <TextBlock VerticalAlignment="Center">直接在XAML中绑定数据</TextBlock>
        <ComboBox Grid.Column="1" Height="23" Name="cmb1" SelectionChanged="cmb1_SelectionChanged">
            <ComboBoxItem Content="上海" Tag="1"></ComboBoxItem>
            <ComboBoxItem Content="北京" Tag="2"></ComboBoxItem>
            <ComboBoxItem Content="天津" Tag="3"></ComboBoxItem>
        </ComboBox>

此绑定  不能设置 SelectValue 值
SelectedItem 返回的是 System.Windows.Controls.ComboBoxItem:上海

SelectedValue 返回的是 System.Windows.Controls.ComboBoxItem:上海

Text 返回的才是 显示的值。

如果想和Winform 中的获取 Value的值。可以 实用 Tag 属性。Tag为 Object 类型。可以获取Value值。

三、绑定IList<T>集合属性 (此绑定比较实用 本人比较喜欢)

 public class City 
        public int ID { get; set; }
        public string Name { get; set; }
 private void Window_Loaded(object sender, RoutedEventArgs e)
            List<City> list = new List<City>();
            list.Add(new City { ID = 1, Name = "上海" });
            list.Add(new City { ID = 2, Name = "北京" });
            list.Add(new City { ID =3, Name = "天津" });
            cmb_list.ItemsSource = list;
  <ComboBox Name="cmb_list" Grid.Row="1" Grid.Column="1" Height="23"
                  DisplayMemberPath="Name" SelectedValuePath="ID" SelectionChanged="cmb1_SelectionChanged"></ComboBox>

 如果不设置 此 DisplayMemberPath="Name" 属性。  ComboBox 显示的是 City 类型名 (City没有覆盖ToString()方法)。如果City覆盖ToString()方法。将显示的是

ToString()方法返回的字符串信息。

     注意:切记 要设置 DisplayMemberPath="Name" 属性

设置 SelectedValuePath="ID"属性。如果City覆盖了 ToString()方法。

SelectItem   ToString() 返回 City  ToString()返回的内容。

SelectValue ToString()  为 City 中ID的值。

四、 绑定DataTable

 private void Window_Loaded(object sender, RoutedEventArgs e)
            DataTable dt = new DataTable();
            dt.Columns.Add(new DataColumn("ID", typeof(Int32)));
            dt.Columns.Add(new DataColumn("Name", typeof(string)));
            DataRow dr1 = dt.NewRow();
            dr1["ID"] = 1;
            dr1["Name"] = "上海";
            dt.Rows.Add(dr1);
            dt.Rows.Add(2, "北京");
            dt.Rows.Add(3,"天津");
            cmb_list.ItemsSource =dt.DefaultView; 
  <ComboBox Name="cmb_list" Grid.Row="1" Grid.Column="1" Height="23"
                  DisplayMemberPath="Name" SelectionChanged="cmb1_SelectionChanged"></ComboBox>
一、用字典给ItemsSource赋值XMAL、&lt;ComboBox Name="cmb_list" Grid.Row="1" Grid.Column="1" Height="23" DisplayMemberPath="Value" SelectedValuePath="Key" SelectionChanged="cmb1_SelectionChanged"&gt;&lt;/Com...
一、WPF数据绑定的概要 数据绑定:是应用程序 UI 与业务逻辑之间建立连接的过程。 如果绑定正确设置并且数据提供正确通知,则当数据的值发生更改时,绑定数据的视觉元素会自动反映更改。 数据绑定可能还意味着如果视觉元素数据的外部表现形式发生更改,则基础数据可以自动更新以反映更改。 例如:如果用户编辑 TextBox 元素的值,则基础数据值会自动更新以反映该更改。 1. 数据绑定涉及到两个方面: 一个是绑定源,一个是绑定目标。绑定源即控件绑定所使用的源数据绑定目标即数据显示的控件。 2. 对于绑定源,在WPF可以是以下四种: •CLR对象:可以绑定到CLR类的公开的属性、子属
1、定义要绑定数据类型 public class ConverterModel{ public List&amp;amp;lt;ColorInfo&amp;amp;gt; ColorList {get;set;} public ConverterModel(){ ColorList = new List&amp;amp;lt;ColorInfo&amp;amp;gt;{ new C... <ListBox Name="list_axis" DisplayMemberPath="Name" SelectedValuePath="Num" SelectionChanged="list_axis_SelectionChanged"/> DisplayMemberPath属性:显示的值 SelectedValuePath属性:在选某个Item时我们可以通过ListBox的SelectedValue属性获取的值的类型 我们先构建一个list
WPF在DataGrid列使用ComboBox绑定,改变ComboBox可回传至绑定的实体, 网上找了好久,终于搞定了,不是那个用枚举的例子!!ComboBox绑定的是一个实体列表. 程序名字叫 给唐僧选老婆!哈哈
第一个问题的回答:在 WPF ,可以通过设置 ComboBox 的 SelectedIndex 或 SelectedItem 属性来设置默认选项。例如,如果要将 ComboBox 的第二个选项设置为默认选项,可以使用以下代码: ComboBox1.SelectedIndex = 1; ComboBox1.SelectedItem = ComboBox1.Items[1]; 注意,ComboBox 的 Items 集合是从零开始索引的,因此第二个选项的索引为 1。