将自定义控件添加到DevExpress GridControl

时间:2018-01-04 21:16:31

标签: devexpress gridcontrol

我有一个为波斯日历准备的自定义DateTimePicker控件。有没有办法将它添加到DevExpress GridControl列? 请帮帮我。

1 个答案:

答案 0 :(得分:1)

来自: Creating a custom (RepositoryItem) ImageComboBox

  

如果您希望在GridControl中使用自定义控件,则必须使用   创建一个编辑器及其 RepositoryItem 后代。

     

有关完整信息,请参阅Custom EditorsHow to register a custom editor for use in the XtraGrid文章   关于如何创建自定义控件。你可以找到一些自定义编辑器   我们的示例中的后代:editor descendants

     

RepositoryItem 类包含编辑器设置,用作   网格中单元格的模板。在显示模式下,GridControl   仅通过RepositoryItem的方法绘制单元格内容。在编辑中   模式,GridControl通过创建相应的编辑器   RepositoryItem.CreateEditor方法。因此,如果您想要添加项目   在初始化网格中使用的编辑器,实现它   RepositoryItem级别。

如果使用以下代码

处理GridView.CustomRowCellEdit事件,则可以为自动过滤器行设置编辑器
    RepositoryItemDateEdit rd = new RepositoryItemDateEdit();
    void gridView1_CustomRowCellEdit(object sender, DevExpress.XtraGrid.Views.Grid.CustomRowCellEditEventArgs e) {
      GridView view = sender as GridView;
      if(e.Column.FieldName == "DOB" && view.IsFilterRow(e.RowHandle)) {
          e.RepositoryItem = rd;
      }
    }

查看Assigning Editors to Columns and Card Fields帮助文章,了解如何将特定编辑器分配给特定的GridView专栏。

我希望你会发现这些信息很有用。