Devexpress GridControl GridView添加右键菜单


gridview菜单常用有几种,Group, Column, Row, Summary 

参考枚举:DevExpress.XtraGrid.Views.Grid.GridMenuType

group的默认菜单

Column的默认菜单

如果要自定义右键菜单,需要设置PopupMenuShowing事件

演示这里给Group,Row和Column添加一些菜单,

private void Form1_Load(object sender, EventArgs e)
{
    gridView1.PopupMenuShowing += GridView1_PopupMenuShowing;
}

private void GridView1_PopupMenuShowing(object sender, DevExpress.XtraGrid.Views.Grid.PopupMenuShowingEventArgs e)
{
    GridView view = sender as GridView;

    //用户在表格列头、资料行、分组区域点击鼠标弹出菜单
    if (GridMenuType.Column == e.MenuType || GridMenuType.Row == e.MenuType || GridMenuType.Group == e.MenuType)
    {
        var item1 = CreatePopupMenuItem(e.Menu.Items, "保存默认样式", null, true);
        var item2 = CreatePopupMenuItem(e.Menu.Items, "还原初始样式", null, false);
        var item3 = CreatePopupMenuItem(e.Menu.Items, "样式管理器", null, false);
        var item4 = CreatePopupMenuItem(e.Menu.Items, "打印文件", null, true);

        //创建二级菜单
        DXSubMenuItem E = new DXSubMenuItem("导出文件", null);
        E.Image = null;
        E.BeginGroup = true;//分组
        CreatePopupMenuItem(E.Items, "导出Excel 97~2003文件", null, false);
        CreatePopupMenuItem(E.Items, "导出Excel 2007或以上版本", null, false);
        CreatePopupMenuItem(E.Items, "导出PDF文件", null, false);
        e.Menu.Items.Add(E);
    }
}

/// <summary>
/// 创建菜单项DXMenuItem
/// </summary>
/// <param name="owner">GridViewMenu</param>
/// <param name="caption">菜单标题</param>
/// <param name="image">菜单图片</param>
/// <param name="clickEvent">Click 事件</param>
/// <param name="beginGroup"></param>
public DXMenuItem CreatePopupMenuItem(DXMenuItemCollection owner, string caption, Image image, bool beginGroup)
{
    DXMenuItem item = new DXMenuItem(caption);
    item.Image = image;
    item.BeginGroup = beginGroup;
    owner.Add(item);
    return item;
}
GarsonZhang www.yesdotnet.com

效果展示:

 

 

 

 

版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
YES开发框架
上一篇:Devexpress gridControl SummaryItem显示格式化设置DisplayFormat
下一篇:NPOI 读取EXCEL(2003,2007)并转换为DataTable
评论列表

发表评论

评论内容
昵称:
关联文章

YES-CMS内容管理系统 售价

联系我们
联系电话:15090125178(微信同号)
电子邮箱:garson_zhang@163.com
站长微信二维码
微信二维码