我有一个 flexgrid(flex 组件网格),我如何隐藏一个单元格。
例如:第 2 行和第 5 列 - 我需要根据某些条件隐藏/删除。
说
if(C1FlexGrid1.Rows[2][5].ToString().Length <0)
{
//I want this to be invisible.
C1FlexGrid1.Rows[2][5].isVisible=false;
}
我使用的方式没有支持 isVisible 的属性。我有什么办法可以做到这一点?谢谢。
我有一个 flexgrid(flex 组件网格),我如何隐藏一个单元格。
例如:第 2 行和第 5 列 - 我需要根据某些条件隐藏/删除。
说
if(C1FlexGrid1.Rows[2][5].ToString().Length <0)
{
//I want this to be invisible.
C1FlexGrid1.Rows[2][5].isVisible=false;
}
我使用的方式没有支持 isVisible 的属性。我有什么办法可以做到这一点?谢谢。
最后我想通了:
为你的 winforms 组件网格创建一个 ownerdrawcell 事件:
componentGrid.DrawMode = C1.Win.C1FlexGrid.DrawModeEnum.OwnerDraw;
componentGrid.OwnerDrawCell += componentGrid_OwnerDrawCell;
方法
void componentGrid_OwnerDrawCell(object sender, C1.Win.C1FlexGrid.OwnerDrawCellEventArgs e)
{
var value = componentGrid.GetCellCheck(e.Row,e.Col);
//Your custom condition
if (value is bool)
{
//Will hide the cell
e.Style.Display = DisplayEnum.None;
}
else
{
//Will show the cell
e.Style.Display = DisplayEnum.Stack;
}
}