我们可以自定义DataGridView的DataGridViewColumn来实现自定义的列,下面介绍一下如何通过扩展DataGridViewColumn来实现一个TreeViewColumn1 TreeViewColumn类 TreeViewColumn继承自DataGridV ...
我们可以自定义Dataget='_blank'>GridView的DataGridViewColumn来实现自定义的列,下面介绍一下如何通过扩展DataGridViewColumn来实现一个TreeViewColumn
1 TreeViewColumn类
TreeViewColumn继承自DataGridViewColumn,为了动态给TreeViewColumn传入一个TreeView,这里暴露出一个公共属性_root,可以绑定一个初始化的TreeView. 另外需要重写DataGridCell类型的CellTemplate,这里返还一个TreeViewCell(需要自定义)
1 /// <summary> 2 /// Host TreeView In DataGridView Cell 3 /// </summary> 4 public class TreeViewColumn : DataGridViewColumn 5 { 6 public TreeViewColumn() 7 : base(new TreeViewCell()) 8 { 9 }10 [Description("Set TreeView Root in DataGridView Cell"), Category("TreeView")]11 public TreeView _root12 {13 get{return Roots.tree;}14 set{Roots.tree=value;}15 }16 public override DataGridViewCell CellTemplate17 {18 get19 {20 return base.CellTemplate;21 }22 set23 {24 // Ensure that the cell used for the template is a TreeViewCell.25 if (value != null &&26 !value.GetType().IsAssignableFrom(typeof(TreeViewCell)))27 {28 throw new InvalidCastException("Must be a TreeViewCell");29 }30 base.CellTemplate = value;31 }32 }33 }
原标题:C#如何自定义DataGridViewColumn来显示TreeView
关键词:C#
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。