Studio for WPF: 旋转 C1FlexGrid 合并单元格文本

使用表格控件,经常会使用到旋转文字角度的功能。使用 C1FlexGrid 控件,实现文本旋转是十分容易的,本章将阐述合并单元格旋转文字的实现方法。<img alt="Rotate Text in MergedRange" src="http://our.componentone.com/wp-content/uploads/2014/05/TransformedText_InMergedRange1.png">

发布于 2014/05/22 00:00

ComponentOne Enterprise

使用表格控件,经常会使用到旋转文字角度的功能。使用 C1FlexGrid 控件,实现文本旋转是十分容易的,本章将阐述合并单元格旋转文字的实现方法。

选择合并单元格中的文本

首先,需要继承 CellFactory 创建自定义类。

public class myCellfactory : CellFactory
{
}

 

然后,需要重载 http://helpcentral.componentone.com/nethelp/c1flexgridwpf/#!XMLDocuments/FlexgridWPFRef/html/M_C1_WPF_FlexGrid_CellFactory_CreateCellContent_3_e6bfeaa3.htm 方法,设置 RotateTransform 角度 ,链接为 RotateTransform 类的详细说明。

public class myCellfactory : CellFactory
{
    public override void CreateCellContent(C1FlexGrid grid, Border bdr, CellRange rng)
    {
        base.CreateCellContent(grid, bdr, rng);
        var tb = bdr.Child as TextBlock;
  
        if (tb != null && rng.Column == 2 || rng.Column == 7 || rng.Column == 8)
        {
            ContentPresenter cp = (VisualTreeHelper.GetParent(tb) as ContentPresenter);
            System.Windows.Media.RotateTransform rotateTransform = new RotateTransform();
            rotateTransform.Angle = 50;
            tb.LayoutTransform = rotateTransform;
            bdr.Background = Brushes.PaleGreen;
            tb.Foreground = Brushes.Blue;
        }
    }
}

 

把自定义的 CellFactory 对象赋值给 C1FlexGrid,效果图如下:

Rotate Text in MergedRange

更详细设置请参考:

VS2010 + Studio for WPF 2014V3

 

关于葡萄城

葡萄城是专业的软件开发技术和低代码平台提供商,以“赋能开发者”为使命,致力于通过表格控件、低代码和BI等各类软件开发工具和服务,一站式满足开发者需求,帮助企业提升开发效率并创新开发模式。葡萄城开发技术始于1980年,40余年来始终聚焦软件开发技术,有深厚的技术积累和丰富的产品线。是业界能够同时赋能软件开发和低代码开发的企业。凭借过硬的产品能力、活跃的用户社区和丰富的伙伴生态,与超过3000家合作伙伴紧密合作,产品广泛应用于信息和软件服务、制造、交通运输、建筑、金融、能源、教育、公共管理等支柱产业。

相关产品
推荐相关案例
关注微信
葡萄城社区二维码

关注“葡萄城社区”

加微信获取技术资讯

加微信获取技术资讯

想了解更多信息,请联系我们, 随时掌握技术资源和产品动态