找回密码
 立即注册

QQ登录

只需一步,快速开始

ljf31

中级会员

31

主题

88

帖子

651

积分

中级会员

积分
651

活字格认证

ljf31
中级会员   /  发表于:2014-3-31 16:52  /   查看:6898  /  回复:5
版主你好,由于列头内容太长,现在想让它折行显示。我目前的做法是在Header容器中放了俩个TextBlock控件,实现了折行的功能。但是导出Excel中,列头的内容没有办法导出。能不能用换行符或者其它方法直接在Header中实现换行。请版主指教。

5 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2014-3-31 18:12:00
沙发
回复 1楼ljf31的帖子

问题我已经了解了,正在处理中,明天回复。
回复 使用道具 举报
ljf31
中级会员   /  发表于:2014-4-1 12:45:00
板凳
回复 2楼iceman的帖子

版主,你好。这个问题有解决的方法吗?
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2014-4-1 16:03:00
地板
回复 3楼ljf31的帖子

恩,可以通过以下代码实现:

  1.         public MainPage()
  2.         {
  3.             InitializeComponent();

  4.             List<Student> sl = new List<Student>();
  5.             sl.Add(new Student { Name = "fdsf\ndsfds" });
  6.             sl.Add(new Student { Name = "fdsf\ndsfds" });
  7.             sl.Add(new Student { Name = "fdsf\ndsfds" });

  8.             this.c1datagrid1.ItemsSource = sl;
  9.             this.c1datagrid1.LoadedColumnHeaderPresenter += c1datagrid1_LoadedColumnHeaderPresenter;
  10.             this.c1datagrid1.ColumnHeaderHeight = 100;
  11.         }

  12.         void c1datagrid1_LoadedColumnHeaderPresenter(object sender, C1.Silverlight.DataGrid.DataGridColumnEventArgs e)
  13.         {
  14.             C1.Silverlight.DataGrid.C1DataGrid datagrid = sender as C1.Silverlight.DataGrid.C1DataGrid;
  15.             if (e.Column.Index==0)
  16.             {
  17.                 datagrid.Columns[0].Header = "na\nme";
  18.             }
  19.         }
  20.     }

  21.     public class Student
  22.     {
  23.         public string Name { get;set;}
  24.     }
  25.     }
  26.     public class Student
  27.     {
  28.         public string Name { get;set;}
  29.     }

复制代码
回复 使用道具 举报
ljf31
中级会员   /  发表于:2014-4-1 17:48:00
5#
回复 4楼iceman的帖子

谢谢,版主。问题解决了。
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2014-4-2 11:28:00
6#
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部