找回密码
 立即注册

QQ登录

只需一步,快速开始

feiyan0320

中级会员

17

主题

70

帖子

615

积分

中级会员

积分
615

活字格认证微信认证勋章

QQ
feiyan0320
中级会员   /  发表于:2014-12-29 15:06  /   查看:5287  /  回复:5
想咨询下wpf里flexgrid实现多表头的同时,是否也支持wpf绑定。
因为我看到示例中flexgrid的多表头实现是后台代码实现的

5 个回复

倒序浏览
Alice
社区贡献组   /  发表于:2014-12-29 17:46:00
沙发
回复 1楼feiyan0320的帖子

设计多列头是通过如下步骤:
1.使用flexGrid.Columns.Add和flexGrid.Rows.Add添加列和行。
2.flexGrid.ColumnHeaders.Rows.Add(new Row()); 在列头添加第二行,实现多行列头。
3.flexGrid.ColumnHeaders[row, column]设置Caption内容。
4.使用AllowMerging属性对列头进行合并。

在XAML下做Header属性的binding是不可能的,因为它不是一个dependency property.
如果你像自定义或是bind它,可以使用CellFactory功能。
你可以设置一个TextBlock 绑定到类然后把它设置给Header的content。
举个例子:
  1. public partial class MainPage : UserControl
  2.     {
  3.         public MainPage()
  4.         {
  5.             InitializeComponent();
  6.             c1flexgrid1.CellFactory = new MyCellFactory();
  7.         }
  8.     }

  9. public class MyCellFactory:C1.Silverlight.FlexGrid.CellFactory
  10.     {
  11.         public override void CreateColumnHeaderContent(C1.Silverlight.FlexGrid.C1FlexGrid grid, Border bdr, C1.Silverlight.FlexGrid.CellRange range)
  12.         {            
  13.             base.CreateColumnHeaderContent(grid, bdr, range);
  14.             TextBlock tb = new TextBlock();
  15.             Binding Bd = new Binding();
  16.             Bd.Path = new PropertyPath("ColumnName");
  17.             tb.SetBinding(TextBlock.TextProperty, Bd);
  18.             bdr.Child = tb;
  19.         }
  20.     }
复制代码
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
feiyan0320
中级会员   /  发表于:2014-12-29 17:52:00
板凳
回复 2楼Alice的帖子

使用flexGrid.Columns.Add和flexGrid.Rows.Add添加列和行。

使用这个和在xaml里数据用Binding没有冲突吧,
也就是说我在xaml里flexgrid用了Binding,我依然可以仅仅在后台代码中单独增加多行列头对吧
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2014-12-30 10:56:00
地板
回复 3楼feiyan0320的帖子

这个和Column的Binding没有冲突。
请注意AutoGenerateColumns属性的设置,这个可以在数据绑定的时候自动生成列。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
feiyan0320
中级会员   /  发表于:2014-12-30 11:34:00
5#
回复 4楼Alice的帖子

非常感谢!
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2014-12-30 17:11:00
6#
回复 5楼feiyan0320的帖子

不用客气。
欢迎就本次回答评分。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部