我有一个使用DataGrid
控件的应用程序,其中XAML中定义了DataGridComboBoxColumn
。现在我有一个要求,我想在后面的代码中创建DataGridComboBoxColumn
及其绑定。
我的XAML是:
<my:DataGrid.Columns>
<my:DataGridComboBoxColumn
Width="100"
Header="Product Code"
SelectedValueBinding="{Binding Path=Product_Id,UpdateSourceTrigger=PropertyChanged,ValidatesOnDataErrors=True}"
SelectedValuePath="Product_Id"
DisplayMemberPath="Product_Code">
<my:DataGridComboBoxColumn.ElementStyle>
<Style TargetType="ComboBox">
<Setter Property="ItemsSource" Value="{Binding Path=ProductList}"/>
</Style>
</my:DataGridComboBoxColumn.ElementStyle>
<my:DataGridComboBoxColumn.EditingElementStyle>
<Style TargetType="ComboBox">
<Setter Property="IsEditable" Value="True" />
<Setter Property="ItemsSource" Value="{Binding Path=ProductList}"/>
<Style.Triggers>
<Trigger Property="Validation.HasError" Value="true">
<Setter Property="Background" Value="Pink"/>
<Setter Property="ToolTip" Value="{Binding RelativeSource={RelativeSource Self}, Path=(Validation.Errors)[0].ErrorContent}"/>
</Trigger>
</Style.Triggers>
</Style>
</my:DataGridComboBoxColumn.EditingElementStyle>
</my:DataGridComboBoxColumn>
</my:DataGrid.Columns>
现在我想进行上面的DataGridComboBox
列及其在代码中的绑定如何实现此目的?
答案 0 :(得分:0)
其中datagrid
是您的DataGrid实例。
datagrid.Columns.Add(new DataGridComboBoxColumn()
{
Width = 100,
Header = "Product Code",
SelectedValuePath="Product_Id",
DisplayMemberPath="Product_Code",
SelectedValueBinding = new System.Windows.Data.Binding()
{
Path = new PropertyPath("Product_Id"),
UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged,
ValidatesOnDataErrors = true
}
});
关注其他事情......