基于flexgrid中的行和列隐藏特定单元格

时间:2012-08-23 21:50:19

标签: c# .net vb.net c1flexgrid

我有一个flexgrid(flex组件网格),我如何隐藏一个单元格。

例如:第2行和第5列 - 我需要根据某些条件隐藏/删除。

表示

if(C1FlexGrid1.Rows[2][5].ToString().Length <0)
{
  //I want this to be invisible.
  C1FlexGrid1.Rows[2][5].isVisible=false;
}

没有任何支持我使用的方式是可见的。我能用这种方式做到吗?感谢。

1 个答案:

答案 0 :(得分:2)

最后我想出来了:

为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;
       }
}