DevExpress,GridControl如何添加自定义列,重写RepositoryItem
如何向XtraGrid添加自定义控件
怎样向XtraGrid中添加自己创建的XtraEditors编辑控件
可以创建 RepositoryItem派生类,并且为其声明静态构造方法和注册方法,如果要在设计器中使用还得给注册方法添加UserRepositoryItemAttribute属性标记,还必须重写RepositoryItem和BaseEdit派生类的EditorTypeName属性
此用法适用XtraGrid, XtraTreeList, XtraVerticalGrid, XtraBars
注意要添加引用:DevExpress.XtraEditors.v10.2
[C#例子]
using DevExpress.XtraEditors;
using DevExpress.XtraEditors.Repository;
using DevExpress.XtraEditors.Registrator;
using System.Windows.Forms;
using System.Drawing;
using System.ComponentModel;
namespace CustomEditors
{
[UserRepositoryItem("Register")]
public class RepositoryItemMyEdit : RepositoryItemTextEdit
{
static RepositoryItemMyEdit()
{
Register();
}
public RepositoryItemMyEdit() { }
internal const string EditorName = "MyEdit";
public static void Register()
{
EditorRegistrationInfo.Default.Editors.Add(new EditorClassInfo(EditorName, typeof(MyEdit),
typeof(RepositoryItemMyEdit), typeof(DevExpress.XtraEditors.ViewInfo.TextEditViewInfo),
new DevExpress.XtraEditors.Drawing.TextEditPainter(), true, null, typeof(DevExpress.Accessibility.TextEditAccessible)));
}
public override string EditorTypeName
{
get { return EditorName; }
}
}
public class MyEdit : TextEdit
{
static MyEdit()
{
RepositoryItemMyEdit.Register();
}
public MyEdit() { }
public string DisplayText { set; get; }
public override string EditorTypeName
{
get { return RepositoryItemMyEdit.EditorName; }
}
[DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
public new RepositoryItemMyEdit Properties
{
get { return base.Properties as RepositoryItemMyEdit; }
}
//protected override void OnClickButton(DevExpress.XtraEditors.Drawing.EditorButtonObjectInfoArgs buttonInfo)
//{
// ShowPopupForm();
// base.OnClickButton(buttonInfo);
//}
//protected virtual void ShowPopupForm()
//{
// using (Form form = new Form())
// {
// form.StartPosition = FormStartPosition.Manual;
// form.Location = this.PointToScreen(new Point(0, Height));
// form.ShowDialog();
// }
//}
}
}
分享到:
相关推荐
有时候需要在Gridcontrol中某一列添加一个小图片,以方便用户点击操作。这个例子是gridcontrol非图片列中添加小图片,进行相关的操作。
在CridControl中根据列表中的记录,根据不同的状态或者判断动态加载不同的图片,以达到不同的状态或者类别记录加载不同的图片,让效果更佳。
devexpress表格控件gridcontrol实现对列统计,可实现总计,平均,求和等。
在winform项目中,使用Devexpress GridControl控件,可能会遇到需要冻结头部几行的需求,本项目实例可以帮到你。
简单纯C#代码控制表头合并和动态添加列。文件包里包含所需Devexpress的DLL文件,项目中引用就可以直接运行
针对DevExpress GridControl GridView 新增行AddNewRow() 很多人加了代码也无法实现添加行或者添加行后InitNewRow这个事件没有触发, 其中主要原因见附件实例代码!
控制DevExpress中GridControl合并单元格方式
C# winform DevExpress 使用GridControl组件实现拖动排序功能,此文档中是完整Demo示例,原文参考 https://blog.csdn.net/xiaoid/article/details/95954708#commentBox 文献,加以修改并进行关键代码注释
解决DevExpress GridControl GridView 在新增数据行时数据为空的问题,新窗口数据返回时自动新增行并刷新。
DevExpress GridControl控件使用DevExpress GridControl控件使用DevExpress GridControl控件使用DevExpress GridControl控件使用DevExpress GridControl控件使用
项目中经常会在表格中插入按钮列,图片列,表格列一些非文本的特殊列。如何在devexpress表格控件gridcontrol中实现呢?以下列举一个实现添加图片列,按钮列,时间列,按钮列,开关列的示例。
DevExpress 编辑GridControl中合并单元格,要求版本号在15以上
dev空间中GridControl自定义添加列以及不规则列头处理,涉及到列头分组问题
今天用到了devexpress的gridcontrol,只想自己添加数据,而不是简单的用datatable绑定,网上搜索了一下,并没有任何可用的解决方案,而且几个关键的地方都无法解决,象initNewRow之类的同样无法触发。花了一点时间...
devexpress表格控件gridcontrol实现纵向标头,在官网中找到一些案例整理给大家分享
GridControl的过滤器的自定义
DevExpress中GridControl使用技巧总结-详解(图文并茂)
开发中使用DevExpress.12.1总结出来的一点网上不常见的一些急手的控件操作功能的一小点。谢谢支持,虽然贵,但是货真价实,如果你从网上收不到解决的方法,不放下来看看。
DevExpress GridControl 控件内部行之间实现拖拽,实际拖拽后行移动过程未实现,可根据实际情况编写,适用GridControl在 winform或DockPanel、UserControl中
devexpress gridcontrol preview demo