在 C1FlexGrid 中添加编辑和删除按钮

C1FlexGrid 是 .NET 平台中性能最佳的表格控件,常用于数据显示和数据编辑操作,今天主要讲解如何在C1FlexGrid 表格控件中增加自定义的编辑和删除列。

发布于 2013/05/31 00:00

ComponentOne Enterprise

C1FlexGrid 是 .NET 平台中性能最佳的表格控件,常用于数据显示和数据编辑操作,今天主要讲解如何在C1FlexGrid 表格控件中增加自定义的编辑和删除列。

首先,我们加载 C1FlexGrid 的数据源,代码如下:

    List<Item> list = new List<Item>();
 
    list.Add(new Item() { ID = 1, Code = "A10001", Name = "产品A1", Description = "产品A1" });
    list.Add(new Item() { ID = 2, Code = "A10002", Name = "产品A2", Description = "产品A2" });
    list.Add(new Item() { ID = 3, Code = "A10003", Name = "产品A3", Description = "产品A3" });
    list.Add(new Item() { ID = 4, Code = "A10004", Name = "产品A4", Description = "产品A4" });
    list.Add(new Item() { ID = 5, Code = "A10005", Name = "产品A5", Description = "产品A5" });
 
    c1FlexGrid1.DataSource = list;

 

然后,添加编辑列和删除列,并设置这两列中显示的图标,代码如下:

    c1FlexGrid1.Cols.Add(2);
    c1FlexGrid1.Cols[5].Width = 20;
    c1FlexGrid1.Cols[5].AllowEditing = false;
    c1FlexGrid1.Cols[6].Width = 20;
    c1FlexGrid1.Cols[6].AllowEditing = false;
 
    for (int row = 1; row < c1FlexGrid1.Rows.Count; row++)
    {
        c1FlexGrid1.SetCellImage(row, 5, Image.FromFile(@"Images\Edit.png"));
        c1FlexGrid1.SetCellImage(row, 6, Image.FromFile(@"Images\Delete.png"));
    }

 

最后在 C1Flexgrid 的 MouseClick 事件中判断当前点击的是那一列,并执行相应的操作,代码如下:

    void c1FlexGrid1_MouseClick(object sender, MouseEventArgs e)
    {
        switch (c1FlexGrid1.Col)
        {
            case 5:
                MessageBox.Show(string.Format("编辑产品:{0}",c1FlexGrid1[c1FlexGrid1.Row,2]));
                break;  
            case 6:
                MessageBox.Show(string.Format("删除产品:{0}", c1FlexGrid1[c1FlexGrid1.Row, 2]));
                break;
            default:
                break;
        }
    }

 

运行截图:

C1FlexGrid

 

源码下载:VS2010 + C1 2013v1

ComponentOne Enterprise | 下载试用

ComponentOne 是一套专注于企业 .NET开发、支持 .NET Core 平台,并完美集成于 Visual Studio 的第三方控件集,包含 300 多种 .NET开发控件,提供表格数据管理、数据可视化、报表和文档、日程安排、输入和编辑、导航和布局、系统提升工具等七大功能,被誉为“.NET开发的‘瑞士军刀’”。

ComponentOne 为您提供专业的产品咨询服务,并由技术支持工程师为您1对1解答。>> 发帖提问

相关产品
推荐相关案例
关注微信
葡萄城社区二维码

关注“葡萄城社区”

加微信获取技术资讯

加微信获取技术资讯

想了解更多信息,请联系我们, 随时掌握技术资源和产品动态