SuperGridControl 使用小技巧
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SuperGridControl 使用小技巧相关的知识,希望对你有一定的参考价值。
(转载网址http://www.ithao123.cn/content-4504849.html)
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 };
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"]);
以上是关于SuperGridControl 使用小技巧的主要内容,如果未能解决你的问题,请参考以下文章
sql面试题_SQl优化技巧_1注意通配符中like的使用,百分号放后面_2避免在where子句中对字段进行函数操作_3在子查询当中,尽量用exists代替in_4where子句中尽量不要使用(代码片