我继承了DataGrid,定义了属性ColumnStyle.写了一个新的列DataGridComoboxColumn,请问如何调用自定义列,并将其封装在Datagrid中,

解决方案 »

  1.   

    [Editor(typeof(DataGridColumnStyleExtClass),typeof(UITypeEditor))]
    public new GridColumnStylesCollection GridColumnStyles
    {
    get
    {
    return base.GridColumnStyles;
    }
    } protected class DataGridColumnStyleExtClass : CollectionEditor
    {
    public DataGridColumnStyleExtClass(Type type) : base(type)
    {
    } protected override System.Type[] CreateNewItemTypes()
    {
    return new Type[]{
     typeof(DataGridBoolColumn),
     typeof(DataGridTextBoxColumn),
     typeof(DataGridComboBoxColumn),
     typeof(DataGridFlagColumn),
     typeof(DataGridDictionaryColumn),
     };
    }
    }
      

  2.   

    我还是不太明白。我改的是windows.forms里的DataGrid.   CollectionEditor是哪里的?
      

  3.   

    就是winform的代码,CollectionEditor你看看msdn。
      

  4.   

    不知道你这边的封装在Datagrid是什么意思,是让DataGrid每一列都是你自已包装的column?如果不是,可以在开发的时候跟普通的column一样用你自己做的column,不太明白你到底想干什么
      

  5.   

    就是把自己的column加载到自己的datagrid上啊,你在设计器就可以添加自己的column。