2012年7月26日

当枚举与结构结合时,小心枚举的初始化默认值一定是0

摘要: Allen Lee在他的一篇博文《从枚举的初始化说起 [C#]》详细论述了枚举的各种初始化方式。有评论认为使用new来初始化枚举不是一个好的习惯,这也许可以避免很多枚举的初始化问题,但当枚举与结构结合时,你能避免枚举的初始化吗?我们知道,c#的结构中,是不允许在声明一个实例字段的同时初始化它的。这带来了一个问题,当你声明一个枚举类型的实例字段时,你希望该枚举的第一个成员值是从1开始的,但结构的实例总是把该实例字段初始化为0,这将给你的程序带来陷阱。请看示例: 新建一个c#控制台应用程序。 Program.cs文件:using System;using System.Collections.Ge 阅读全文

posted @ 2012-07-26 14:38 水光 阅读(4211) 评论(7) 推荐(1) 编辑

2012年7月25日

位标志枚举

摘要: 枚举为定义一组可以赋给变量的命名整数常量提供了一种有效的方法。可以使用枚举类型定义位标志,从而使该枚举类型的实例可以存储枚举数列表中定义的值的任意组合。 示例:创建一个WPF程序MainWindow.xaml文件<Window x:Class="UseEnum_wpf.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 阅读全文

posted @ 2012-07-25 15:59 水光 阅读(529) 评论(0) 推荐(0) 编辑

C#中参数前缀ref、out的使用

摘要: 一、使用ref、out前缀与不使用前缀的区别 int intParam = 0; object objParam = null; public void method(int intParam,object objParam) //intParam是值类型形参, objParam是引用类型形参 { //do something..... } public void Main() { method(intParam,objParam) ;//intParam是值类型实参,objParam是引用类型实参 } 不使用前缀时,向方法传递一个实参时,对应的形参会使用实参的一个副本来初始化。对于值类型的实 阅读全文

posted @ 2012-07-25 07:56 水光 阅读(1350) 评论(1) 推荐(0) 编辑

2012年7月18日

关于连接字符串的使用以及|DataDirectory| (转载)

摘要: Ado.net2.0中新增加了一个MagicValue,可以在应用程序的配置文件的数据库链接串种使用|DataDirectory| ,例如<connectionStrings> <add name="ConnectionString" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|data.mdf;User Instance=true" providerName="Syste 阅读全文

posted @ 2012-07-18 21:21 水光 阅读(204) 评论(0) 推荐(0) 编辑

2011年11月8日

statusStrip控件上的项目靠右对齐

摘要: 方法一:在状态栏所有项目前加一个空白的StatusLabel ,并将其Spring属性设为True。Spring属性的作用是设置该项是否填满剩余空间,设为True以后,当程序运行时后面的项就都挤到右边,实现靠右对齐了。如果更进一步,需要一部分项靠左,一部分靠右,那就在两部分中间插入空白StatusLabel,同时设其Spring属性为True。这种方法比较简单,不用手工添加代码。首选!Spring属性为True的控件后只有一个要靠右对齐的控件,我在win7使用125%的文本分辨率时,发现正常。当切换到100%时,发现要靠右对齐的控件不见了,鼠标点击时能出现,但运行时不见。我只好在要靠右对齐的右 阅读全文

posted @ 2011-11-08 20:21 水光 阅读(698) 评论(0) 推荐(0) 编辑

2011年10月26日

对绑定到数据源的文本框如何设置其显示格式

摘要: 文本框赋值时,设置其格式非常方便,将值的格式设定好即可。例如: Dim i as integer = 4333me.textbox1.text = String.Format("{0:00.0}", i)但对于文本框绑定到数据源时,此方式无效。可以采取下列方法:在Form的Load事件中,或其它事件中,为文本框绑定到数据源,一并设置其格式,例如:Me.TextBox1.DataBindings.Add("Text", BindingSource, "数据库字段名", True).FormatString = "#0.00&q 阅读全文

posted @ 2011-10-26 19:33 水光 阅读(1019) 评论(0) 推荐(1) 编辑

2011年7月8日

在VS2010Winform项目中使用RDLC报表定义文件、ReportViewer控件生成本地报表

摘要: 这是一个使用RDLC报表定义文件、ReportViewer控件生成本地报表的简单示例。(此文章存在瑕疵,2011.10.29重新编辑)一、新建一个.net4.0项目:(下图的.NET Framework 2.0 改为 .NET Framework 4.0----2011.10.29)该项目命名为ReportApp,为项目新建两个文件夹 Reports、Datasets。Reports文件夹存储报表定义文件,Datasets存储数据集。二、创建Dataset1、第一个Dataset:确保解决方案资源管理器中选中Datasets后,点击 菜单中的“项目”;“添加新项”;选择左侧 “数据”,再选择“ 阅读全文

posted @ 2011-07-08 16:51 水光 阅读(9844) 评论(3) 推荐(1) 编辑

2011年6月28日

VB.net中使文本框只能输入数字

摘要: 编制计算类程序时文本框一般都用于输入数字数据,此时可以通过以下步骤来确保用户输入数据的正确性:首先添加好文本框控件TextBox后把属性IMEMode的值改成Disable,这样在该文本框中就不能使用中文输入法了。然后对文本框的KeyPress事件添加以下代码文本框用来输入整数PrivateSubTextBox1_KeyPress(ByValsenderAsObject,ByValeAsSystem.Windows.Forms.KeyPressEventArgs)HandlesTextbox1.KeyPressIfChar.IsDigit(e.KeyChar)Ore.KeyChar=Chr(8 阅读全文

posted @ 2011-06-28 14:38 水光 阅读(2520) 评论(0) 推荐(0) 编辑

数据库中的表名不能以数字开头

摘要: '获取数据过程PrivateSub GetData() conn =New OleDb.OleDbConnection conn.ConnectionString ="Provider=Microsoft.jet.oledb.4.0;Data Source=HI.mdb" conn.Open() '创建sql命令 comm =New OleDb.OleDbCommand comm.CommandText ="select * from HI03to10" comm.CommandType = Co... 阅读全文

posted @ 2011-06-28 10:28 水光 阅读(806) 评论(0) 推荐(0) 编辑

2011年6月27日

将SQLServer数据库中的Image字段绑定到PictureBox控件及DataBindings属性

摘要: 对于文本类字段,可以使用使用如下代码绑定数据:'textbox1的数据源,name是数据库中的字段,dt是datatableMe.TextBox1.DataBindings.Add("Text", dt, "name")但对于图像字段,使用如下代码则是错误的:'picturebox1的数据源,Picture是数据库字段名,dt是DataTableMe.PictureBox1.DataBindings.Add("Image", dt, "Picture", True)可以使用如下的代码将Image类型 阅读全文

posted @ 2011-06-27 16:41 水光 阅读(1641) 评论(0) 推荐(0) 编辑

导航