基本grid的用法

<div class="cnt" id="blog_text">
<p><span><strong>1.基本grid的用法</strong></span></p>
<p style="color: rgb(255, 0, 0);"><span><strong>数据绑定:</strong></span></p>
<p><span><strong><span style="color: rgb(255, 0, 0);">#region 数据绑定</span><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);"> /// <summary></span><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);"> /// 数据绑定</span><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);"> /// </summary></span><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);"> /// <param name="TableA">数据库中要查询的数据表</param></span><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);"> /// <param name="TableB">虚拟的数据表供程序中调用</param></span><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);"> private void MyDataBound(string TableA,string TableB)</span><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);"> {</span><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);"> SqlConnection myConn = new SqlConnection("Data Source=JIAHE-04FF98FBA;Initial Catalog=test;Integrated Security=True");</span><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);"> DataSet ds = new DataSet();</span><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);"> SqlDataAdapter oleDbDataAdapter = new SqlDataAdapter("SELECT * FROM " + TableA, myConn);</span><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);"> oleDbDataAdapter.Fill(ds, TableB);</span><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);"> gridControl1.DataSource = ds.Tables[TableB];</span><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);"> }</span><br style="color: rgb(255, 0, 0);"><span style="color: rgb(255, 0, 0);"> #endregion</span><br></strong></span></p>
<p><span><strong>1.1 gridControl-->view-->gridView </strong></span></p>
<p><span></span> 绑定到grid上的字段可以拖动删除,在任意字段上右键点column chooser 可以将删除的字段添加进来</p>
<p>字段上右键选择实现选定需要的信息和排序</p>
<p>字段上右键选择分组(group by column),也可以直接将字段拖到上面实现分组</p>
<p>字段上右键选择group by box后可以取消分组栏,(不能实现拖动分组,但可以选择分组)</p>
<p>字段上右键选择best fit可以实现该字段最佳宽度(便于查看)</p>
<p> <strong>1.2 gridControl-->view-->cardView</strong></p>
<p>以卡片形式存放数据</p>
<p>可以自己设定过滤选项</p>
<p><strong>1.3 gridControl-->view-->banderGridView</strong></p>
<p>将字段分段显示,前提是给<strong>gridControl</strong>先绑定一个dataset</p>
<p>动态绑定的时候不能分段,也不能分行</p>
<p><strong>1.3 gridControl-->view-->advBanderGridView</strong></p>
<p>高级分段显示,动态绑定的字段可以在前台向下拖动后分段,但效果不好,相当于分行显示的样子</p>
<p><strong>1.4 else</strong></p>
<p>可以通过create ner view增加一个view ,但程序只显示你选定的view</p>
<p>zoom的使用 快速上升,也就是选择子项后单独显示(上到最高显示)</p>
<p><strong>1.5 feature browser</strong></p>
<p>-->priview 可以指定在每行中预览的字段</p>
<p>-->filtering 可以自动过滤(optingview.showAutoFiterRow)</p>
<p><strong>1.7 Master-Detail 绑定的问题<br></strong>首先在gridControl1中指定dataSource 的绑定是主表<br> 然后在level设计器中添加层(retrieve details)<br> 最后用代码绑定:<br> using (SqlConnection con = new SqlConnection(SqlHepler.CONN_STRING))<br> {<br> //SqlDataAdapter sda1 = new SqlDataAdapter("select * from Orders",con);<br> //sda1.Fill(this.northwindDataSet.Orders);</p>
<p> SqlDataAdapter sda2 = new SqlDataAdapter("select * from [Order Details]",con);<br> sda2.Fill(this.northwindDataSet.Order_Details);<br> }</p>
<p><strong>1.8 summary的用法</strong></p>
<p> //If the GridOptionsView.ShowFooter option is set, <br> //the summary(of course some else can ) can be displayed within the footer cell.<br> gridView1.OptionsView.ShowFooter = true;</p>
<p> //初始化,也可以不用指定<br> colOrderID.SummaryItem.FieldName = "OrderID";<br> colOrderID.SummaryItem.SummaryType = DevExpress.Data.SummaryItemType.Count;</p>
<p><strong>2.XtraGrid的打印</strong></p>
<p>借用别人写的一个类</p>
<p>class DevPrint<br> {</p>
<p> //*********************字段*********************<br> private string pageHeaderName="";<br> private string pageFooterName="";<br> private bool isPrintPage=true;<br> private bool isPrintDate=true;<br> private int headerLocation=1;<br> private int footerLocation=1;<br> private int pageLocation=3;<br> private int dateLocation=5;<br> private bool enableEditPage = true;<br> private System.Drawing.Font pageHeaderFont = null;<br> private System.Drawing.Font pageFooterFont = null;<br> private System.Drawing.Printing.Margins devMargins = null;<br> private System.Drawing.Printing.PaperKind devPaperKind = System.Drawing.Printing.PaperKind.A4;//可以自定义修改纸张<br> private DevExpress.XtraPrinting.PageHeaderArea PHA = new DevExpress.XtraPrinting.PageHeaderArea();<br> private DevExpress.XtraPrinting.PageFooterArea PFA = new DevExpress.XtraPrinting.PageFooterArea();<br> //*********************字段*********************</p>
<p><br> //*********************属性*********************<br> //标题<br> public string PageHeaderName<br> {<br> get<br> {<br> return pageHeaderName;<br> }<br> set <br> {<br> pageHeaderName=value;<br> }<br> }<br><br> //页脚<br> public string PageFooterName<br> {<br> get<br> {<br> return pageFooterName;<br> }<br> set<br> {<br> pageFooterName = value;<br> }<br> }</p>
<p> //是否打印页数<br> public bool IsPrintPage<br> {<br> get <br> {<br> return isPrintPage;<br> }<br> set<br> {<br> isPrintPage = value;<br> }<br> }</p>
<p><br> //是否打印时间<br> public bool IsPrintDate<br> {<br> get<br> {<br> return isPrintDate;<br> }<br> set<br> {<br> isPrintDate = value;<br> }<br> }</p>
<p> //header的位置(左,中,右)<br> public int HeaderLocation<br> {<br> get<br> {<br> return headerLocation;<br> }<br> set<br> {<br> headerLocation=value;<br> }<br> }</p>
<p> //footer的位置(左,中,右)<br> public int FooterLocation<br> {<br> get<br> {<br> return footerLocation;<br> }<br> set<br> {<br> footerLocation=value;<br> }<br> }</p>
<p><br> //页数的位置<br> public int PageLocation<br> {<br> get<br> {<br> return pageLocation;<br> }<br> set<br> {<br> pageLocation=value;<br> }<br> }</p>
<p><br> //时间的位置<br> public int DateLocation<br> {<br> get<br> {<br> return dateLocation;<br> }<br> set<br> {<br> dateLocation=value;<br> }<br> }<br><br> //是否允许编辑页面<br> public bool EnableEditPage<br> { <br> get<br> {<br> return enableEditPage;<br> }<br> set<br> {<br> enableEditPage = value;<br> }<br> }</p>
<p> //标题字体<br> public System.Drawing.Font PageHeaderFont<br> {<br> get<br> {<br> return pageHeaderFont;<br> }<br> set<br> {<br> pageHeaderFont = value;<br> }<br> }</p>
<p><br> //页脚字体<br> public System.Drawing.Font PageFooterFont<br> {<br> get<br> {<br> return pageFooterFont;<br> }<br> set<br> {<br> pageFooterFont = value;<br> }<br> }</p>
<p><br> //页边距<br> public System.Drawing.Printing.Margins DevMargins<br> {<br> get<br> {<br> return devMargins;<br> }<br> set<br> {<br> devMargins = value;<br> }<br> }</p>
<p><br> //纸张类型<br> public System.Drawing.Printing.PaperKind DevPaperKind<br> {<br> get<br> {<br> return devPaperKind;<br> }<br> set<br> {<br> devPaperKind = value;<br> }<br> }<br> //*********************字段*********************</p>
<p> </p>
<p> private void PageHeaderFooterSettings()<br> {<br> PHA.Content.Clear();<br> PFA.Content.Clear();<br> string[] stringsPHA = new string[] {"","",""};<br> string[] stringsPFA = new string[] {"","",""};<br> switch(headerLocation)<br> { <br> case 0:stringsPHA[0]=pageHeaderName;<br> break;<br> case 1:stringsPHA[1]=pageHeaderName;<br> break;<br> case 2:stringsPHA[2]=pageHeaderName;<br> break;<br> default:stringsPHA[1]=pageHeaderName;<br> break;<br> };<br> switch(footerLocation)<br> {<br> case 0:stringsPFA[0]=pageFooterName;<br> break;<br> case 1:stringsPFA[1]=pageFooterName;<br> break;<br> case 2:stringsPFA[2]=pageFooterName;<br> break;<br> default:stringsPFA[1]=pageFooterName;<br> break;<br> };<br> if (isPrintPage)<br> {<br> switch(pageLocation)<br> {<br> case 0:stringsPHA[0]=stringsPHA[0]+"[Page # of Pages #]";<br> break;<br> case 1:stringsPHA[1]=stringsPHA[1]+"[Page # of Pages #]";<br> break;<br> case 2:stringsPHA[2]=stringsPHA[2]+"[Page # of Pages #]";<br> break;<br> case 3:stringsPFA[2]=stringsPFA[2]+"[Page # of Pages #]";<br> break;<br> case 4:stringsPFA[1]=stringsPFA[1]+"[Page # of Pages #]";<br> break;<br> case 5:stringsPFA[0]=stringsPFA[0]+"[Page # of Pages #]";<br> break;<br> default:stringsPFA[2]=stringsPFA[2]+"[Page # of Pages #]";<br> break;<br> };<br> }<br> if (isPrintDate)<br> {<br> switch(dateLocation)<br> {<br> case 0:stringsPHA[0]=stringsPHA[0]+"[Date Printed]";<br> break;<br> case 1:stringsPHA[1]=stringsPHA[1]+"[Date Printed]";<br> break;<br> case 2:stringsPHA[2]=stringsPHA[0]+"[Date Printed]";<br> break;<br> case 3:stringsPFA[2]=stringsPFA[2]+"[Date Printed]";<br> break;<br> case 4:stringsPFA[1]=stringsPFA[1]+"[Date Printed]";<br> break;<br> case 5:stringsPFA[0]=stringsPFA[0]+"[Date Printed]";<br> break;<br> default:stringsPFA[0]=stringsPFA[0]+"[Date Printed]";<br> break;<br> };<br> }<br> PHA.Content.AddRange(stringsPHA);<br> PFA.Content.AddRange(stringsPFA);<br> if (pageHeaderFont != null)<br> {<br> try<br> {<br> PHA.Font = pageHeaderFont;<br> }<br> catch<br> {<br> PHA.Font = new Font(new System.Drawing.FontFamily("楷体_GB2312"),20,System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point);<br> }<br> }<br> else<br> {<br> PHA.Font = new Font(new System.Drawing.FontFamily("楷体_GB2312"),20,System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point);<br> }<br> if (pageFooterFont != null)<br> {<br> try<br> {<br> PFA.Font = pageFooterFont;<br> }<br> catch<br> {<br> PFA.Font = new Font(new System.Drawing.FontFamily("楷体_GB2312"),9,System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point);<br> }<br> }<br> }</p>
<p> public void ShowDevPreview(DevExpress.XtraPrinting.IPrintable printComponent)<br> {<br> PageHeaderFooterSettings();<br> DevExpress.XtraPrinting.PrintingSystem ps = new DevExpress.XtraPrinting.PrintingSystem();<br> DevExpress.XtraPrinting.PrintableComponentLink pc =new DevExpress.XtraPrinting.PrintableComponentLink();<br> pc.Component = printComponent;<br> pc.Landscape = true;<br> //是否指定页边距尺寸<br> if (devMargins != null) <br> pc.Margins = devMargins;<br> //是否定义纸张<br> if (devPaperKind != System.Drawing.Printing.PaperKind.A4)<br> pc.PaperKind = devPaperKind;<br> //标题和页脚的显示<br> pc.PageHeaderFooter = new DevExpress.XtraPrinting.PageHeaderFooter(PHA,PFA);<br> pc.CreateDocument(ps);<br> pc.EnablePageDialog = enableEditPage;<br> pc.ShowPreview();<br> } </p>
<p><br> }</p>
</div>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值