Spread for WPF-Silverlight 表格控件:在单元格中添加超链接

发布时间:2014/12/31 00:12 发布者:iceman

返回博客中心

Spread for WPF-Silverlight 可以定制样式丰富的数据格式,在本篇文章中我们将阐述如何在单元格中添加超链接。

具体实现方法如下:

1. 继承 CustomDrawingObject 类创建自定义绘制元素:

public class ControlDrawingObject : CustomDrawingObject
{
    private Control _rootElement;
    public ControlDrawingObject(int row, int col, Control control) : base(row, col) { _rootElement = control; this.ShowDrawingObjectOnly = true; }
    public override FrameworkElement RootElement
    {
        get { _rootElement.Margin = new Thickness(1); return _rootElement; }
    }
}

 

2. 使用 DrawingObject 创建超链接按钮,继承 WorkSheet 类创建自定义表单

public class MyWorksheet : Worksheet
{
    public bool DrawingObjectVisible { get; set; }
    public override DrawingObject[] GetDrawingObject(int row, int column, int rowCount, int columnCount)
    {
        if (row != 1 || column != 1) return base.GetDrawingObject(row, column, rowCount, columnCount);
        DrawingObject dobj;
        dobj = new ControlDrawingObject(row, column, new HyperlinkButton() { Content = "This is a link", NavigateUri = new Uri("http://www.google.com") });
        return new DrawingObject[] { dobj };
    }
}

 

3. 最后,添加自定义表单到 GcSpreadSheet

this.gcSpreadSheet1.Sheets.Clear();
this.gcSpreadSheet1.Sheets.Add(new MyWorksheet());
var sheet = this.gcSpreadSheet1.ActiveSheet;

 

示例Demo:

 

下载试用版体验更多更能:点击下载


关于葡萄城

赋能开发者!葡萄城是专业的集开发工具、商业智能解决方案、低代码开发平台于一身的软件和服务提供商,为超过 75% 的全球财富 500 强企业提供服务。葡萄城专注控件软件领域30年,希望通过模块化的开发控件、灵活的低代码应用开发平台等一系列开发工具、解决方案和服务,帮助开发者快速响应复杂多变的业务需求,最大程度地发挥开发者的才智和潜能,让开发者的 IT 人生更从容更美好。

了解详情,请访问葡萄城官网