清除网格单元格

时间:2010-08-11 07:20:54

标签: wpf

我有一个网格控件(不是DataGrid),我想删除例如第二行中的第二列。这可以在没有引用网格单元内容的情况下完成吗?

非常感谢你的提示!

2 个答案:

答案 0 :(得分:4)

找到一个更稳定的解决方案,虽然它需要循环遍历单元格:

        // these are the row and column number of the cell
        // you want to have removed...
        int getRow = 2, getCol = 5;
        for (int i = 0; i < myGrid.Children.Count; i++)
            if ((Grid.GetRow(myGrid.Children[i]) == getRow)
                && (Grid.GetColumn(myGrid.Children[i]) == getCol))
            {
                myGrid.Children.Remove(myGrid.Children[i]);
                break;
            }

答案 1 :(得分:0)

在代码隐藏中,我想?

如果按顺序声明它们并填写所有字段,则可以通过

获取单元格的编号
int cellNumber = rowNumber * columnCount + columnNumber;

然后myGrid.Children[cellNumber-1]为您提供所需的子节点。

myGrid.Children.RemoveAt(ellNumber-1);会从网格中删除该子节点。

请注意,它只会从网格的子项列表中删除。如果您对该项目有任何其他参考,您也必须照顾它们。