我有一个radgridview,错误是当用户点击一个单元格而没有点击texblock时,不会传递datacontext。 currentcellinfo始终为null。当文本块被命中时,它返回值。
我已经尝试过下面的代码,我得到了我选择的行中所有单元格的值btu我无法确定我刚刚选择的单元格的索引。如何在所选行中获取单元格值或至少列索引?
<telerik:RadGridView x:Name="myGrid" SelectionMode="Extended">
<telerik:RadGridView.LayoutTransform>
<ScaleTransform ScaleX="1" ScaleY="1"/>
</telerik:RadGridView.LayoutTransform>
</telerik:RadGridView>
我使用代码访问它:下面的代码可以工作但是因为我得到第一个并且在循环中断,它总是得到第一个单元格/列。我不知道代码应该得到单元格值accdg selectedindex
var item = myGrid.InputHitTest(point) as DependencyObject;
var test1 = EnumerateParents(item).OfType<Border>();
var test2 = test1.Select(c => c.DataContext).ToList();
var isbreak = false;
foreach (var t in test2) {
foreach (var c in t.CastTo<IEnumerable>()) {
if (c is tableCell) {
rightClickItem = c.CastTo<tableCell)>();
isbreak = true;
break;
}
}
if (isbreak) break;
}
答案 0 :(得分:0)
尝试使用以下内容处理GridView上的SelectedCellsChanged事件:
private void gridView_SelectedCellsChanged(object sender, GridViewSelectedCellsChangedEventArgs e)
{
if (e.AddedCells != null && e.AddedCells.Count > 0)
{
foreach (GridViewCellInfo cellInfo in e.AddedCells)
{
// do stuff
}
}
}