旧版我的代码是我的约束
dgvShow.Columns["grdTest_Active"].DataPropertyName = oDTList.Columns["STATUS"].ToString();
dgvShow.Columns["grdTest_LnkOrder"].DataPropertyName = oDTList.Columns["ORDER"].ToString();
我正在转换WPF中的代码,我已经采用了网格,并且已经放置了
<DataGridTemplateColumn Header="Active" Width="50" IsReadOnly="True">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<CheckBox x:Name="chkActive" IsChecked="{Binding Path=Active}" HorizontalAlignment="Center" VerticalAlignment="Center" IsEnabled="True"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn Header="Order" Width="60" IsReadOnly="True">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox ItemsSource="{Binding Path=Order}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
我正在使用
DataGridObjectTypeList.DataContext = oDTList.DefaultView;
on vmUCObjType Cs文件它绑定了网格但是,复选框和组合框数据没有显示。
我想将oDTList数据表值绑定到我的复选框和组合框如何做到这一点?
请有人帮助我,我是WPF的新手。
答案 0 :(得分:1)
在您的XAML文件中,写下
<ComboBox x:Name="Name_ComboBox" DisplayMemberPath="Name" SelectedValuePath="id"/>
在您的代码中,放置:
Name_ComboBox.ItemSource = Table_name;
(Table_name是对您提到的表的引用)。
然后您可以使用以下表达式在组合框中找到当前所选人员的ID:
Name_ComboBox.SelectedValue
答案 1 :(得分:0)
我已删除了ComboBoxColumn
并在前端添加了DataGridComboBoxColumn
,在代码后面我做了类似的事情:
((DataGridComboBoxColumn)dgShowList.Columns[1]).ItemsSource = DTCount.DefaultView;
((DataGridComboBoxColumn)dgShowList.Columns[1]).DisplayMemberPath = DTCount.Columns["Order"].ToString();
((DataGridComboBoxColumn)dgShowList.Columns[1]).SelectedValuePath = DTCount.Columns["Order"].ToString();
((DataGridComboBoxColumn)dgShowList.Columns[1]).SelectedValueBinding = new Binding("Order");