在WPF DataGridView中,如何获取点击单元格的值?
刚刚接触WPF,这个问题可能比较弱.但是对我这种新手来说确实很头疼...问题很简单.WPF绑定到一个List.设置如下:
<my:DataGrid AutoGenerateColumns="False"
Name="dataGridView2"
CanUserReorderColumns="False"
CanUserResizeColumns="True"
CanUserSortColumns="False"
FrozenColumnCount="3"
GridLinesVisibility="Horizontal"
PreviewMouseLeftButtonDown="DataGridCell_PreviewMouseLeftButtonDown"
SelectionMode="Extended"
SelectionUnit="FullRow"
>
<my:DataGrid.Columns>
<my:DataGridTextColumn Header="名称" Width="150" Binding="{Binding Name}"/>
<my:DataGridTextColumn Header="编码" Width="180" Binding="{Binding Code}"/>
</my:DataGrid.Columns>
</my:DataGrid>
在DataGridCell_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)事件中却没法定位单击或当前光标所在的单元格.上网狂搜之后依然没有得到答案.请问高数如何解决这个小小的问题?谢谢 --------------------编程问答-------------------- 算位置怎么可能定位不到
--------------------编程问答--------------------
--------------------编程问答-------------------- 可能是因为属性设置中有 SelectionUnit="FullRow”(选中的是整行,而不是某个单元格),也不知道你要做什么处理 --------------------编程问答-------------------- 楼上那位的代码写在SelectedCellsChanged事件里就可以了
foreach (DataGridCellInfo cell in this.dataGrid1.SelectedCells)
{
try
{
TextBlock cellTB = cell.Column.GetCellContent(cell.Item) as TextBlock;
MessageBox.Show(cellTB.Text.ToString());
}
catch (Exception)
{
CheckBox chB = cell.Column.GetCellContent(cell.Item) as CheckBox;
MessageBox.Show(chB.IsChecked.ToString());
}
}
补充:.NET技术 , C#