随笔分类 -  winform资料

摘要:为了在大数据量中减少客户端在使用表格时对服务器及网络等资源的占用,我们需要在XtraGrid表格中实现分页操作的功能。根据这个功能需求,结合XtraGrid的基本功能,提出了以下2种实现分页操作的方案,并对每一个方案的利弊进行分析,比较之后希望能找到最适合你自己的方案。 1、利用XtraGrid本身的Server Mode模式 XtraGrid为了满足对大数据量访问时的性能要求,提供了一种叫做Server Mode的工作模式,在这种模式中,XtraGrid将不会一次性从数据源中读取所有数据到内存中,而是根据需要从数据源中读取少量数据并显示到屏幕上。但XtraGrid在这种模式下工作时有一... 阅读全文
posted @ 2011-09-16 13:45 小锋神 阅读(7973) 评论(0) 推荐(1) 编辑
摘要:void pictureBox1_Paint(object sender, PaintEventArgs e) { foreach (Control C in this.Controls) { if (C is Label) { Label L = (Label)C; L.Visible = false; e.Graphics.DrawString(... 阅读全文
posted @ 2011-09-16 12:19 小锋神 阅读(350) 评论(0) 推荐(0) 编辑
摘要:使用lblPstart.BackColor=Color.Transparent;可以让lable控件的背景色透明,可以看到摆放lable容器的背景色,但这个背景色不一定是窗体的背景色。 比如: From1.Controls.Add(lable1); lable1.BackColor=Color.Transparent; 这样,lable1就是透明的 但是如果是: From1.Contorls.Add(pictureBox1);//或者是其它容器控件 pictureBox1.Controls.Add(lable1); lable1.... 阅读全文
posted @ 2011-09-16 12:18 小锋神 阅读(8828) 评论(1) 推荐(1) 编辑
摘要:DevExpress .net组件包中,有一个组件是xtraTabbedMdiManager,可以将MDI窗口显示为TabControl的样式,可以说非常实用。可惜的是,关闭标签页(即子MdiChild)不能通过双击来实现,这对于用惯了傲游等软件的朋友来说,有点不习惯。查看xtraTabbedMdiManager的事件,只有MouseDown,MouseUp等,并没有DoubleClick,好不爽。 其实,转换一下思路,我们可以将连续的两次MouseDown事件模拟成一个双击事件,就可以解决上面的问题了,真是一点就破,技术上没有什么难度,且看代码吧://通过MouseDown事件模拟... 阅读全文
posted @ 2011-09-16 11:25 小锋神 阅读(3571) 评论(0) 推荐(0) 编辑
摘要:今天用到了gridcontrol这个控件,要求写一个gridview的双击事件,因为想要的效果是只双击行才出Message,用gridview的Double_Click我没实现,后来想到MouseDown,一试,很简单,首先,仍旧需要将gridview1.OptionsBehavior.Editable设为false,下面是代码: Skelta BPM.NET(全球第一.NET工作流引擎) Visual WebGui (完美的用户界面解决方案) List & Label(图表报表生成控件) DXperience Uni Premium 白金版(慧都独家) //... 阅读全文
posted @ 2011-09-15 15:11 小锋神 阅读(12963) 评论(0) 推荐(2) 编辑
摘要:C#中MessageBox用法大全(附效果图)我们在程序中经常会用到MessageBox。 MessageBox.Show()共有21中重载方法。现将其常见用法总结如下: 1.MessageBox.Show("Hello~~~~");最简单的,只显示提示信息。 2.MessageBox.Show("There are something wrong!","ERROR");可以给消息框加上标题。3.if (MessageBox.Show("Delete this user?", "Confirm Messa 阅读全文
posted @ 2011-09-14 00:59 小锋神 阅读(37156) 评论(0) 推荐(2) 编辑
摘要:DateEdit如果开启Vista模式并显示日期+时间模式 问题,以前没有涉及过,借机看一下,记录如下:设置为Vista显示模式(如下图)设置以下属性dateEdit1.Properties.VistaDisplayMode = DevExpress.Utils.DefaultBoolean.True;dateEdit1.Properties.VistaEditTime = DevExpress.Utils.DefaultBoolean.True;设置显示长日期模式(日期+时间):dateEdit1.Properties.DisplayFormat.FormatString="g&q 阅读全文
posted @ 2011-09-07 12:24 小锋神 阅读(2422) 评论(0) 推荐(0) 编辑
摘要:使用到的对象:1、 DataGridView: dataGridView12、 BindingNavigator: bindingNavigator1(自带添加按钮btnAdd、删除按钮btnDelete)3、 ToolStripButton: btnCancelEdit(添加到bindingNavigator1之中)使用到的事件:/// <summary> /// 单元格的值改编后,执行更新、或插入操作; /// </summary> /// <param name="sender"></param> /// <par 阅读全文
posted @ 2011-08-28 22:42 小锋神 阅读(6210) 评论(0) 推荐(0) 编辑
摘要:DataGridView控件在Winform程序中使用相当的普遍,如何能让其输入即保存,而不用另增加一个“保存”按钮呢?经研究,终于找到解决办法:在DataGridView的RowValidated事件中增加代码以下代码 //获取该行绑定数据 DataRowView row = (DataRowView)gvProduct.Rows[e.RowIndex].DataBoundItem; //若数据未改动,则返回 if (row.Row.RowState == DataRowState.Unchanged) return; //执行SQL更新数据 string sql = "updat 阅读全文
posted @ 2011-08-28 22:40 小锋神 阅读(2117) 评论(1) 推荐(0) 编辑
摘要:Devpress.XtraGrid.GridControl.GridView 属性 说明Options OptionsBehavior 视图的行为选项 AllowIncrementalSearch 允许用户通过输入想得到的列值来定位行 AllowPartialRedrawOnScrolling 允许视图在垂直滚动中局部刷新 AutoExpandAllGroups 自动展开视图中的所有组 AutoPopulateColumns 当视图中没有某些数据源中的字段时,在视图中自动创建这些列 AutoSelectAllInEditor 在一个单元格编辑中,是否允许通过Enter... 阅读全文
posted @ 2011-08-26 16:38 小锋神 阅读(2003) 评论(0) 推荐(0) 编辑
摘要:方案一: 窗体属于类,可以在窗体类中定义已全局变量,类型为公开、静态的。示例: public static string str =""; 注意是静态变量,如果为: public string str = ""; 可能会出现问题,非静态变量只能实例化对象后,才可以访问,如果该值为动态赋值的话,当别的窗口调用的时候,该值 str,一直是为"";所以说最好能设置为静态成员变量,用类来访问它。方案二:在窗体类中定义构造函数,意思就是说,如果form1要用到form2的一个变量,则要在form1中定义一个构造函数:public Form1(s 阅读全文
posted @ 2011-08-13 10:52 小锋神 阅读(1331) 评论(0) 推荐(0) 编辑
摘要:你需要设置HideSelection 为 false 并且用 AppendText来插入新数据。 阅读全文
posted @ 2011-08-13 10:45 小锋神 阅读(467) 评论(0) 推荐(0) 编辑
摘要:DEV控件:gridControl常用属性设置 1.隐藏最上面的GroupPanel gridView1.OptionsView.ShowGroupPanel=false; 2.得到当前选定记录某字段的值 sValue=Table.Rows[gridView1.FocusedRowHandle][FieldName].ToString();3.数据只读 gridView1.OptionsBehavior.Editable=false;4.不显示MasterDetailView gridView1.OptionsDetail.EnableMasterViewMode=false;5.修改最上面的 阅读全文
posted @ 2011-05-05 10:51 小锋神 阅读(6445) 评论(2) 推荐(2) 编辑
摘要:关于GridControl的几点介绍1. 它的功能类似与 Visual Studio .NET 2003自带的 DataGrid ,用于数据的客户端展示。开发者可以领用程序控制进行分页现实,分页方法在此不予介绍了。2. 它与DataGrid的不同就在于其功能的非常强大,可以直接设计报表并可导出为Excel,Txt,Hmtl 格式。免去了再用其他控件设计报表的烦杂。常用的几个对象private DevExpress.XtraGrid.GridControl gridControl1;//整个数据容器private DevExpress.XtraGrid.Views.BandedGrid.Band 阅读全文
posted @ 2011-05-04 22:13 小锋神 阅读(938) 评论(0) 推荐(0) 编辑
摘要:以下代码已经有好多人写过,还望各位多多指教我只不过是整理了一下在我使用过程中的比较熟悉的,在以后的使用过程中会继续添加1.gridView 奇行与偶行交替变色this.gridView1.OptionsView.EnableAppearanceEvenRow = true;this.gridView1.OptionsView.EnableAppearanceOddRow = true;this.gridView1.Appearance.EvenRow.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int 阅读全文
posted @ 2011-05-04 22:12 小锋神 阅读(4926) 评论(0) 推荐(1) 编辑
摘要:1:默认情况下,gridView1.OptionsView.ColumnAutoWidth属性是true,即各列的宽度自动调整,你把它设成false,就会出现了。2:DeveloperExpress控件组合中的GridControl控件,如何自动显示每一行的序号?比方说有10条数据记录,我要在记录旁边显示1.2.3.4.这样的数字.但是,如果更改了数据记录的显示方式,升序或者降序都不影响数字的变化.在GridView的CustomDrawRowIndicator事件中添加如下代码:privatevoidgridView1_CustomDrawRowIndicator(objectsender 阅读全文
posted @ 2011-05-04 22:02 小锋神 阅读(2261) 评论(0) 推荐(1) 编辑
摘要:DevExpress控件之GridControl控件(代码篇)1. 设置数据源:string sql = "select fid,fname from dual"; DataTable dt = DALUse.Query(sql).Tables[0];gridControl1.DataSource = dt;*:Daluse是项目数据库连接基类,不用特别理会2.绑定字段:这部分工作主要是在Designer中进行的,dev的Designer设计器提供了非常方便的设置方式.我么可以省去敲代码,直接在设计器中就可以完成了.在左边选Columns,添加完列以后,在列的FieleNa 阅读全文
posted @ 2011-05-04 21:54 小锋神 阅读(1045) 评论(0) 推荐(0) 编辑
摘要:说明Options OptionsBehavior 视图的行为选项 AllowIncrementalSearch 允许用户通过输入想得到的列值来定位行 AllowPartialRedrawOnScrolling 允许视图在垂直滚动中局部刷新 AutoExpandAllGroups 自动展开视图中的所有组 AutoPopulateColumns 当视图中没有某些数据源中的字段时,在视图中自动创建这些列 AutoSelectAllInEditor 在一个单元格编辑中,是否允许通过Enter或F2来选择该单元格的所有内容 AutoUpdateTotalSummary 当列值发生改变时,自动更新汇总. 阅读全文
posted @ 2011-05-04 17:40 小锋神 阅读(2116) 评论(0) 推荐(0) 编辑
摘要:我查了一下,ydsunny(小强) ( )是web的解决方法,在winform里,DataGridView没有RowDataBound事件,如果在winform里,如下修改: private void dataGridView1_RowPrePaint(object sender, DataGridViewRowPrePaintEventArgs e) { if (e.RowIndex > = dataGridView1.Rows.Count - 1) return; DataGridViewRow dgr = dataGridView1.Rows[e.RowIndex]; try { 阅读全文
posted @ 2011-05-04 16:39 小锋神 阅读(3346) 评论(0) 推荐(0) 编辑
摘要:很多朋友都会在开发WinForm中遇到Label要显示的内容太长,但却不能换行的问题.这里我总结了几种方法,供大家参考。第一种是把Label的AutoSize属性设为False,手动修改Label的大小.这样的好处是会因内容的长度而自动换行,但是当内容的长度超过所设定的大小时,多出的内容就会无法显示.因此,这种方法适合于基本确定内容长度的时候使用。第二种是把Label的Dock设为FILL,同时将AutoSize属性设为False,这种方法可将上面所说的缺点修正,但是同时Label会将其它控件的位置霸占,影响布局.因此,在使用该方法时,最好给Label加上个Panel或GroupBox控件。第 阅读全文
posted @ 2011-04-28 16:02 小锋神 阅读(426) 评论(0) 推荐(0) 编辑