1

我在silverlight 应用程序中使用组件一FlexGrid,它在网格中自动生成列。我想让其中一个列的数据表现为可点击的超链接。对此问题的任何帮助将不胜感激。

4

2 回答 2

1

我想出了一种在 C1FlexGrid 中添加超链接单元格的方法。应该扩展CellFactory类并在类覆盖方法 CreateCellContent(C1FlexGrid grid, Border bdr, CellRange range) 内部编写如下内容:

public override void CreateCellContent(C1FlexGrid grid, Border bdr, CellRange range)
    {
      //Ofcourse One should figure out first the col in which they want to       
      //add the cell
       var width = GetWidthForHyperlinkControl((string)grid[range.Row, range.Column]);
       var cell = new HyperlinkControl
            {
                HorizontalAlignment = HorizontalAlignment.Left,
                VerticalAlignment = VerticalAlignment.Center,
                Width = width,
                Height = 16,
                NavigateUri = null,
                IsTabStop = false,
                Content = (string)grid[range.Row, range.Column]
            };
  }
于 2016-02-19T10:25:07.937 回答
0

ComponentOne FlexGrid 的示例项目包括一个超链接示例。应该是您已安装项目的一部分。

如果没有,您也可以通过ComponentOne 网站访问它。

本质上,您为超链接单元格/列设置样式并应用它。如示例所示,您可以使用OwnerDrawCell事件来执行此操作。

于 2014-12-04T17:56:54.123 回答