您的位置:首页 > 其它

WPF dataGrid下的ComboBox的绑定

2014-10-20 15:40 417 查看
WPF dataGrid下的ComboBox的绑定

Wpf中dataGrid中的某列是comboBox解决这个问题费了不少时间,不废话了直接上代码

xaml 代码

<DataGridTemplateColumn Header="组名">

  <DataGridTemplateColumn.CellTempLate>

<DataTemplate>
    <ComboBox SelectedValue="{Binding Path=Name}" ItemSource={Binding Path=SelectionList,RelativeSource={RelativeSource AncestorType={x:Type UserControl},Mode=FindAncestor}}></ComboBox>

<DataTemplate>

<DataGridTemplateColumn.CellTempLate>

</DataGridTemplateColumn >


xmal的代码写完了。下面写后台代码。

.cs代码如下:

public ObservableCollection<string> SelectionList //ObservableCollection这是一个类,需引用(using System.Collections.ObjectModel)

{

  get{return _selectionList;}

  set{_selectionList=value;}

}

private observableCollection<string> _selectionList=new observableCollection<string>(); //这个是实现的重要一步


为什么用ObservableCollection类,可自行网上搜索

接下来应该给SelectionList 添加下来值了。

SelectionList .Add("Name1");

SelectionList .Add("Name2");

这样ComboBox的下来框就有Name1和Name2了,当然SelectionList也可以添加后台查询出来的DataTabel的值,无非就是加个循环而已

这是值给ComboBox添加值而已,最后一步,把从数据库查出来的值绑定到ComboBox上,让其实默认展示项

(select name ,field ...from table )查询出一个DataTable的集合

dataGrid的name(自己起的名字)dataGrid.ItemSource=DataTable.DefaultView;

这样查询出的name将会绑定在ComboBox上。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: