首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DataGridRow.IsEditing从不返回true

DataGridRow.IsEditing从不返回true
EN

Stack Overflow用户
提问于 2014-11-24 10:39:54
回答 1查看 356关注 0票数 0

假设我的DataGrid中有5列5行。现在,我想在编辑模式下获取currentRow的所有单元格。我成功地做到了。现在,我想禁用除单元格正在编辑的行之外的所有行。但是在下面的代码中,r.IsEditing从不返回true。谁能解释一下为什么?

代码语言:javascript
复制
for (int column = 0; column <= dg.Columns.Count - 1; column++)
{
    if (!(GetDataGridCell(new DataGridCellInfo(dg.Items[rowIndex], dg.Columns[column])).IsReadOnly))
    {
        GetDataGridCell(new DataGridCellInfo(dg.Items[rowIndex], dg.Columns[column])).IsEditing = true;
    }
}

foreach (DataGridRow r in rows)
{
    if (!(r.IsEditing))
    {
        r.IsEnabled = false;
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-11-24 12:40:54

有点棘手。为了使代码正常工作,我需要在代码中添加以下行:

代码语言:javascript
复制
dg.CurrentCell = new DataGridCellInfo(dg.Items[rowIndex], dg.Columns[0]);
dg.BeginEdit();

所以,现在我的完整代码如下:

代码语言:javascript
复制
dg.CurrentCell = new DataGridCellInfo(dg.Items[rowIndex], dg.Columns[0]);
dg.BeginEdit();

for (int column = 0; column <= dg.Columns.Count - 1; column++)
{
    if (!(GetDataGridCell(new DataGridCellInfo(dg.Items[rowIndex], dg.Columns[column])).IsReadOnly))
    {
        GetDataGridCell(new DataGridCellInfo(dg.Items[rowIndex], dg.Columns[column])).IsEditing = true;
    }
}

foreach (DataGridRow r in rows)
{
    if (!(r.IsEditing))
    {
        r.IsEnabled = false;
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27102839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档