SuperGridControl 使用小技巧

这篇博客详细介绍了如何使用SuperGridControl进行数据展示和操作。内容包括:显示行号、调整行头宽度、隐藏行头、启用筛选和列头图标、设置单元格可选值、显示子表、设置行号起始值、切换展开收缩图标、显示过滤器、允许列分组以及使用分组。示例代码涵盖了各种功能的实现,帮助开发者更好地理解和应用SuperGridControl。
摘要由CSDN通过智能技术生成

1、显示行号

superGridControl1.PrimaryGrid.ShowRowGridIndex = true;

 

2、允许调整行头的宽度

superGridControl1.PrimaryGrid.AllowRowHeaderResize = true;

 

3、不允许显示行头

superGridControl1.PrimaryGrid.ShowRowHeaders = false;

 

4、让列头显示筛选图标

superGridControl1.PrimaryGrid.EnableFiltering = true;
superGridControl1.PrimaryGrid.EnableColumnFiltering = true;

 

5、在列头出显示图标

.gridColumn1.HeaderStyles.Default.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image2")));

 

6、当鼠标移动某个列的单元格上显示图标

this.gridColumn4.CellStyles.MouseOver.Image = global::HRMS.Properties.Resources.BugUp;
this.gridColumn4.CellStyles.MouseOver.ImageAlignment = DevComponents.DotNetBar.SuperGrid.Style.Alignment.MiddleRight;
this.gridColumn4.CellStyles.SelectedMouseOver.Image = global::HRMS.Properties.Resources.BugUp;
this.gridColumn4.CellStyles.SelectedMouseOver.ImageAlignment = DevComponents.DotNetBar.SuperGrid.Style.Alignment.MiddleRight;

//如果该行设置了ReadOnly

  this.gridColumn4.CellStyles.ReadOnlyMouseOver.Image = global::HRMS.Properties.Resources.BugUp;
  this.gridColumn4.CellStyles.ReadOnlySelectedMouseOver.Image = global::HRMS.Properties.Resources.BugUp;

 

7、如何当单元格可以选择指定值

 

 

 1 //先定义一个类
 2 internal class FragrantComboBox : GridComboBoxExEditControl
 3 {
 4       public FragrantComboBox(IEnumerable orderArray)
 5       {
 6            DataSource = orderArray;
 7       }
 8 }
 9 
10 //让后在窗体构造方法中的InitializeComponent后面添加代码
11 string[] orderArray = { "Asterids", "Eudicots", "Rosids" };
12             superGridControl1.PrimaryGrid.Columns["bm"].EditorType = typeof(FragrantComboBox);
13             superGridControl1.PrimaryGrid.Columns["bm"].EditorParams = new object[] { orderArray };

View Code

 

8、显示子表

 1  //在load方法中加载数据
 2 private void MainForm_Load(object sender, EventArgs e)
 3  {
 4 
 5             SqlConnection conn = new SqlConnection();
 6             conn.ConnectionString = "server=192.168.0.133;database=analyse_ipos;user id=sa;password=sa";
 7             conn.Open();
 8 
 9             DataSet set = new DataSet();
10 
11             new SqlDataAdapter("select zddm,dz,sj from ipos_zdjbb", conn).Fill(set, "zdjbb");
12 
13             superGridControl1.PrimaryGrid.DataSource = set;
14             superGridControl1.PrimaryGrid.DataMember = "zdjbb";
15 
16             new SqlDataAdapter("select top 1000 id,djbh,zddm,sl,je,yyrq from ipos_qtlsd",conn).Fill(set,"qtlsd");
17             new SqlDataAdapter("select q.id,q.djbh,spdm,sptm,m.sl,m.je from ipos_qtlsdmx m inner join (select top 1000 id,djbh from ipos_qtlsd) q on m.dj_id=q.id", conn).Fill(set, "qtlsdmx");
18             set.Relations.Add("1", set.Tables["zdjbb"].Columns["zddm"], set.Tables["qtlsd"].Columns["zddm"]);
19             set.Relations.Add("2", set.Tables["qtlsd"].Columns["id"], set.Tables["qtlsdmx"].Columns["id"]);
20             conn.Close();
21            
22 }
23 
24  //数据绑定完成事件
25         private void superGridControl1_DataBindingComplete(object sender, GridDataBindingCompleteEventArgs e)
26         {
27             
28             GridPanel panel = e.GridPanel;
29             //显示行号
30             panel.ShowRowGridIndex = true;
31             if (panel.DataMember == "qtlsdmx")
32             {
33                 double count = 0;
34                 foreach (GridElement item in panel.Rows)
35                 {
36                     GridRow row = item as GridRow;
37                     count += Convert.ToDouble(row["je"].Value);
38                 }
39 
40                 panel.Footer.Text = string.Format("<font size='9' famaly='宋体'>总金额:<font color='Green'>{0}</font></font>", count);
41             }
42         }

 

9、设置行号的起始值(默认值为0)

superGridControl1.PrimaryGrid.RowHeaderIndexOffset = 1;

 

10、设置展开和收缩图标

1 this.superGridControl1.PrimaryGrid.CollapseImage = global::HRMS.Properties.Resources.BugRight;
2 this.superGridControl1.PrimaryGrid.ExpandImage = global::HRMS.Properties.Resources.BugUp;

 

11、显示Filter

 

this.superGridControl1.PrimaryGrid.Filter.Visible = true;

 

12、允许按列分组

this.superGridControl1.PrimaryGrid.GroupByRow.Visible = true;

 

13、使用分组

GridPanel panel = superGridControl1.PrimaryGrid;
panel.SetGroup(panel.Columns["Period"]);
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: supergridcontrol和datatable都是数据管理和显示的工具,但它们的应用领域和功能略有不同。 supergridcontrol是一种常用的网格控件,用于实现数据的展示和管理。它可以对数据进行排序、过滤、筛选和分组等操作,支持多种数据格式的输入和输出,可与数据库结合使用supergridcontrol适用于各种数据量比较大、复杂关系比较多的数据展示和管理场合,如高级数据分析、数据挖掘等。 Datatable是.NET框架中的一种数据类型,它的具体实现是一个表格结构,用于存储和处理大量的数据。Datatable可以对数据进行插入、删除、修改等操作,并且可以进行数据筛选、排序和分组。Datatable配合ADO.NET使用,可以与各种数据库连接和操作。Datatable适用于需要对数据进行多次处理和操作的场合,如数据分析、数据清洗等。 虽然supergridcontrol和datatable都是用于数据管理和展示的工具,但它们在应用场合和功能上略有区别。需要根据具体的数据处理需求来选择合适的工具来进行实现。 ### 回答2: Supergridcontrol和Datatable都是在不同开发环境下使用的控件和类,它们都可用于数据的展示和处理。Supergridcontrol是一种视觉效果很好的控件,可以在各种开发环境下使用,它可以显示并编辑数据,也可以将数据以表格的形式导出。Supergridcontrol适用于在开发环境中实现高质量界面的数据表格控件。 Datatable是一种在ASP.NET开发环境中常用的类,在web开发中,Datatable类是常用的数据类型,它可以用来创建和操作表格数据,主要用于数据的相关操作和数据的展示。Datatable是一种非常基础的数据结构,它可以在web开发过程中提供方便的数据读取、过滤、排序、分组等功能。此外,Datatable还支持大量的增删改查操作。 总的来说,Supergridcontrol和Datatable都是用于处理和展示数据的控件和类,具有不同的特点和适用范围。Supergridcontrol适用于在各种环境中实现高质量的数据表格控件,Datatable则是在ASP.NET开发环境中常用的数据类型类,可以提供更多的数据操作功能。 ### 回答3: SuperGridControl 和 DataTable 都是 C# 语言中的两个常用控件。 SuperGridControl 是一种高度自定义的表格控件,其设计的主要目的是为了提供更好的性能和更强的灵活性。相较于传统的 DataGridView 控件,SuperGridControl 支持多种列结构、自定义渲染和内存数据缓存等特性,可以更好地适应不同业务需求。 而 DataTable 则是一种基于内存的轻量级数据表对象,用于在程序中处理和存储数据。它可以包含多个 DataColumn 属性来定义数据列的结构,而每一行则是一个 DataRow 对象。DataTable 支持多种数据操作,如查询、排序、筛选和更新等。 总的来说,SuperGridControl 更适合于展示大量数据、复杂数据结构和多种样式的表格,而 DataTable 则更适合于数据的内存处理和简单的数据操作。两者可以结合使用SuperGridControl 通过绑定 DataTable 实现数据的交互,提高应用程序的性能和可维护性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值