信息发布软件,b2b软件,广告发布软件

标题: 百分之八十的人会突略VB.NET的这个秘密功能DataGrid中使用CheckBox列 [打印本页]

作者: 群发软件    时间: 2017-5-25 23:51
标题: 百分之八十的人会突略VB.NET的这个秘密功能DataGrid中使用CheckBox列
本帖最后由 群发软件 于 2017-5-25 23:52 编辑

一、WindowsForm下的DataGrid中使用CheckBox列

  在csdn的.net板块中经常看到有人在问怎样在DataGrid中加入CheckBox列,看上去好像有点复杂,其实VS.net 2003就直接支持该项功能,只是由于其“隐蔽性”结果未被一些人发现。以下是使用过程,

  1.在窗体上建立DataGrid;

  2.选中DataGrid在属性窗口中点击TableStyles属性右边的按钮,在弹出的窗口中添加dataGrdiTableStyle1,在右边的属性窗口中,点击GradClumnStyles属性右边的按钮;

  3.接下去的操作就是在弹出的窗口中添加按钮下拉菜单中选择列类型,这里包括DataGridTextBoxColumn和DataGridBoolColumn,默认是文本列。如下图所示:

百分之八十的人会突略VB.NET的这个秘密功能DataGrid中使用CheckBox列 b2b软件

  二、使用链接文件

  链接文件的作用笔者认为在某种程度上体现了重用。比如在解决方案中的多个项目都需要一些共同的文件,那么只需要一个实体文件,其他项目添加引用该文件是比较好的处理方式,有点类似于windows系统中文件的快捷方式但又有所不同,因为在项目编译时会同时编译该链接文件,比如该文件为代码文件。

  下面是演示的解决方案:

百分之八十的人会突略VB.NET的这个秘密功能DataGrid中使用CheckBox列 b2b软件

  要在Zhzuo.WindowsTest项目中链接Zhzuo.ConsoleTest中的App.config文件。选中需添加文件的项目,在右键菜单中选择添加“现有项”,浏览到app.config所在目录,选中该文件选择打开方式下拉菜单“链接文件”,如下:

百分之八十的人会突略VB.NET的这个秘密功能DataGrid中使用CheckBox列 b2b软件

  完成后的操作如下:

百分之八十的人会突略VB.NET的这个秘密功能DataGrid中使用CheckBox列 b2b软件


  该App.config文件图标上由一个类似快捷方式的箭头。从这一操作过程笔者想到了Access文件的独占方式打开也是这样的。


  三、添加解决方案项数据

  大家肯定注意到上面截图中有一个特殊的文件夹就是解决方案项,不过vs.net 2003下功能还是有点弱。以下是在2005下的操作截图。

百分之八十的人会突略VB.NET的这个秘密功能DataGrid中使用CheckBox列 b2b软件

  在2005中增加了文件夹功能。


  演示性操作了一下结果如下:

百分之八十的人会突略VB.NET的这个秘密功能DataGrid中使用CheckBox列 b2b软件

  感觉还不错,当然笔者更关心的是文件物理目录的位置所在,

百分之八十的人会突略VB.NET的这个秘密功能DataGrid中使用CheckBox列 b2b软件

  如预料的那样在解决方案项中的文件夹实际上是不存在的,而这些文件存放在解决方案的顶级目录。笔者在解决方案中试着重命名Textfile2.txt文件名为Textfile1.txt,果真提示“无法重命名该文档,因为项目中已经存在使用所指定名称的文档。”,打开.sln文件未能找到相关配置信息,打开.suo文件(隐藏状态),看不到有用的东西。

  以上是笔者在项目开发过程中所想到和用到的一些体验,而这些功能也往往是一些国内同行未注意到的。如果你经常看国外的一些开源.net项目,会发现类似于“解决方案项”, “链接文件”这类功能是比较常用的。


CheckBox(复选框)控件用来标识某个选项是否为选定的状态。因此通常用此控件提供“Yes/No”或“True/False”选项。可用分组的CheckBox控件显示多组不同类型的选项,用户可从中一个组选择一个或多个选项。CheckBox控件在工具箱中的图标如图所示: 百分之八十的人会突略VB.NET的这个秘密功能DataGrid中使用CheckBox列 b2b软件

CheckBox控件与RadioBox(单选框)控件都可以用来指示用户是否对某个选项作出选择。不同之处在于,对于一个组内RadioBox控件,一次只能选择其中的一个,而对于所有的CheckBox控件,则可选定任意数目的复选框。RadioBox控件将在后面进一步介绍。
1.CheckState属性
CheckBox控件的CheckState属性指示复选框处于选定、未选定或禁止状态(暗淡的)中的哪一种。选定时,CheckState设置值为1。
下表为用于设置CheckState属性的数值和相应的Visual Basic常数:

设置值
常数
UnChecked
0
CheckState.UnChecked
Checked
1
CheckState.Checked
Indeterminate
2
CheckState.Indeterminate

用户单击CheckBox控件指定选定或未选定状态,然后可检测控件状态并根据此信息编写应用程序以执行某些操作。缺省时,CheckBox控件设置为CheckState.Unchecked。若要预先在一列复选框中选定若干复选框,则应在New或InitializeComponent过程中将CheckState属性设置为CheckState.Checked以选中复选框;可将CheckState属性设置为CheckState.Indeterminate以禁用复选框。例如,有时可能希望满足某条件之前禁用复选框。
2.Click事件
无论何时单击CheckBox控件都将触发Click事件,然后编写应用程序,根据复选框的状态执行某些操作。在下例中,每次单击CheckBox控件时都将改变其Text属性以指示选定或未选定状态:

Protected Sub CheckBox1_Click(ByVal sender As Object,ByVal As_                       System.EventArgs)Handles CheckBox.Click    If CheckBox1.CheckState=CheckState.Checked Then       CheckBox1.Text="Checked"    ElseIf CheckBox1.CheckState=CheckState.UnChecked Then       CheckBox1.Text="UnChecked"    End If

注意:如果试图双击CheckBox控件,则将双击当作两次单击,而且分别处理两次单击,即:CheckBox控件不支持双击事件。
3.响应鼠标和键盘
在键盘上使用Tab键并按SpaceBar键,由此将焦点转移到CheckBox控件上,这时也会触发CheckBox控件的Click事件。可以在Text属性的一个字母之前添加连字符,创建一个键盘快捷方式来切换CheckBox控件的选择。
4.增强CheckBox控件的视觉效果
CheckBox控件象Button和RadioButton控件一样,可通过更改Style属性的设置值后使用Image、ImageAlign、ImageIndex和ImageList属性增强其视觉效果。例如:有时可能希望在复选框中添加图标或位图,或者在单击或禁止控件时显示不同的图象等。


在vb.net中,CheckBox、CheckedListBox、RadioButton和TrackBar这四个控件的功能都是设置和获取值的,我们称之为设置值的控件。这篇我们就先来了解下CheckBox的使用。

在Windows 窗体中,CheckBox 控件指示某特定条件是打开的还是关闭的。它常用于为用户提供是/否或真/假选项。可以成组使用复选框 (CheckBox) 控件以显示多重选项,用户可以从中选择一项或多项,所以通常我们称之为复选框。

复选框 (CheckBox) 控件和单选按钮 (RadioButton) 控件的相似之处在于,它们都是用于指示用户所选的选项。它们的不同之处在于,在单选按钮组中一次只能选择一个单选按钮。但是对于复选框 (CheckBox) 控件,则可以选择任意数量的复选框,如下图一所示是复选框和单选按钮:

百分之八十的人会突略VB.NET的这个秘密功能DataGrid中使用CheckBox列 b2b软件

提示:关于单选按钮的使用请看:vb.net入门——设置值的控件:RadioButton的使用

复选框可以使用简单数据绑定连接到数据库中的元素。多个复选框可以使用 GroupBox 控件进行分组。这对于可视外观以及用户界面设计很有用,因为成组控件可以在窗体设计器上一起移动。

CheckBox 控件有三个重要属性

1、Checked 属性,指示复选框是已选中还是未选中,返回 true 或 false;

2、CheckState 属性,指示复选框的复选状态,返回 CheckState.Checked 、 CheckState.Unchecked、CheckState.Indeterminate;

3、ThreeState 属性,控制用户是否可以选择复选框的不确定状态,返回 true 和 false,当它设置为True时候,CheckState 还可能返回CheckState.Indeterminate 在这种“不确定状态”下,复选框以浅灰色显示,以表示该选项不可用。

在vb.net的工具箱中,CheckBox控件如下图二所示:

百分之八十的人会突略VB.NET的这个秘密功能DataGrid中使用CheckBox列 b2b软件

一、响应CheckBox的单击事件

每当用户单击 Windows 窗体上的复选框 CheckBox 控件时,便会触发Click事件,当用户双击复选框控件时,每次单击将单独处理,所以CheckBox控件是不支持双击事件的。

需要注意的是,在CheckBox的属性中,有一个 AutoCheck 属性,如果 AutoCheck 属性为 true(默认值),当单击复选框时,CheckBox 自动被选中或清除。否则,当 Click 事件发生时,必须手动设置 Checked 属性。

下面我们演示在 Click 事件处理程序中,使用 Checked 属性确定控件的状态,并执行必要操作。如下代码:

Private Sub CheckBox1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox1.Click

If CheckBox1.Checked = True Then

CheckBox1.Text = "Checked"

Else

CheckBox1.Text = "Unchecked"

End If

End Sub

百分之八十的人会突略VB.NET的这个秘密功能DataGrid中使用CheckBox列 b2b软件

当然,以上代码是为了演示Checked属性的返回值,实际上要获得一样的效果,也可以使用以下的简化代码:

Private Sub CheckBox1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox1.Click

CheckBox1.Text = CheckBox1.CheckState.ToString

End Sub

这里CheckBox1.CheckState返回的就是复选框的当前状态,一般情况下,我们是在CheckedChanged事件中检查复选框的当前状态,如下代码所示:

Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged

Select Case CheckBox1.CheckState

Case CheckState.Checked

'添加必要的执行代码

Case CheckState.Unchecked

'添加必要的执行代码

Cas



作者: bysqb    时间: 2017-5-26 14:47
前,很耐心解说,付款后效率很快,第二天就做好了!打开微信后确认效果不错,嗮图了
作者: cd0010    时间: 2017-5-26 15:01
能用...算了好评吧
作者: 大宝罗滴滴    时间: 2017-5-28 01:19
力,好评
作者: ye112219    时间: 2017-5-30 02:25
好想请您吃一餐饭哦。
作者: 大宝罗滴滴    时间: 2017-6-2 10:15
很好,东西很好用!
作者: lalajie    时间: 2017-6-10 14:36
卖家的细心指导和安装,服务热情周到,掌柜技术很好,谢谢!
作者: 枯干枯干    时间: 2017-6-16 04:26
的很漂亮,我很满意。
作者: ye112219    时间: 2017-6-18 08:35
,速度也很快,对于我的小白问题也耐心解答了,很好的店家
作者: ctbvip    时间: 2017-6-20 12:44
的很满意,装修完后跟文案沟通,态度非常好,积极帮我做修改,很满意
作者: niubttt    时间: 2017-6-22 00:02
功能真好,太棒了
作者: anleey    时间: 2017-6-22 10:20
意,做了好几个店铺了,服务真心的不错,客服真的很热情,装修以后就是你家了!
作者: 发财猪    时间: 2017-6-22 18:53
错满意吧下次需要还会来
作者: daoke    时间: 2017-6-22 23:30
网站制作的很好,企业团队效率就是高!
作者: jzgsjt    时间: 2017-6-23 08:57
棒棒的,态度也很好,分分钟就搞定了,感谢,?




欢迎光临 信息发布软件,b2b软件,广告发布软件 (http://postbbs.com/) Powered by Discuz! X3.2