我有一个数据网格,在wpf中有四列组合框。在开始时,启用第一个组合框。在第一个组合框上进行选择后,第二个组合框将启用。我无法访问我的xaml.cs文件中的组合框名称属性,因此我可以在成功选择第一个组合框后启用下一个组合框列。您能否建议如何访问我的xaml.cs文件中数据网格内存在的组合框属性?
这是我的xaml代码
<DataGridTemplateColumn
Header ="Example 9">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox ItemsSource="{Binding PartIds, RelativeSource={RelativeSource AncestorType=Window}}" SelectedItem ="{Binding PartId,UpdateSourceTrigger=PropertyChanged}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
答案 0 :(得分:0)
假设DataGrid
中有两列,第一列包含combobox
,其selecteditem
绑定到名为PartId
的属性,第二列包含还有一个combobox
selecteditem
绑定到名为PartId2
的属性,您的模型看起来应该是这样的:
public class Model
{
public string PartId { get; set; }
public string PartId2 { get; set; }
}
现在,假设您的DataGrid
itemsource
绑定到名为ObservableCollection
的{{1}}:
DgCollection
设置第一列的 private ObservableCollection<Model> _dgCollection;
public ObservableCollection<Model> DgCollection
{
get { return _dgCollection; }
set
{
if (Equals(value, _dgCollection)) return;
_dgCollection = value;
OnPropertyChanged();
}
}
后,第二列可以使用DataTrigger
激活其combobox
,如下所示:
selecteditem
您可以轻松地将其概括为四列。