WinForm 公共控件

时间:2023-11-10 15:07:07

一、窗体属性:

1、AcceptButton - 窗体的“接受”按钮。如果设置该属性,每次用户按“Enter”键都相当于“单击”了该按钮。

需要设置哪个键,就在后面选择。

2、CancelButton - 窗体的“取消”按钮。如果设置该属性,每次用户按“Esc”键都相当于“单击”了该按钮。

需要设置哪个键,就在后面选择。

二、公共控件及其控件的属性:

1、Button:按钮,单击时触发事件
(1)Enabled - 控制按钮是否可用,设置为False时,运行程序后按钮变为灰色不可用

(2)Visible - 控制按钮是否可见,设置为False时,运行程序后按钮见不到

(3)TabIndex - Tab键顺序索引,当有多个文本框时,如果要按顺序输入,可以更改文本框TabIndex的值,

按钮中要把这个观点可以设置TabStop 设置为False
2、CheckBox(复选框)、CheckListBox(复选框组)- CheckListBox不好用,可以用容器里面的Panel(分组)代替,可以任意排列、布局

3、ComboBox:下拉菜单
(1)如何数据填进去
     a、可以在后台将要填进去的内容放到 Items集合中去
     b、也可以在设计中点击一下出现一个黑色的向右的箭头,点击打开,再点击编辑项集合编辑器
     c、或者在属性里面找Items(集合),点击后面的省略号进行添加

(2)如何取到选中的数据

在后台程序用 SelectedItem
    a、可以输入 - DropDown 可以在控件里面输入内容
    b、只允许选择 - DropDownStyle 只能选择不能输入
    c、默认选中项 - SelectedIndex 在后台写

private void button1_Click(object sender, EventArgs e)
{
//按钮1 填数据
//通过点击按钮1,用循环把i放到comboBox1里面
for (int i = ; i < ; i++)
{
comboBox1.Items.Add(i);
}
}
private void button2_Click(object sender, EventArgs e)
{
//按钮2 取数据
//取comboBox1中的数据
//MessageBox.Show(comboBox1.SelectedItem.ToString());
}

4、DateTimePicker:允许用户选择日期和时间
(1)MessageBox.Show(dateTimePicker1.Text); - 取出来的日期是中文日期
(2)MessageBox.Show(dateTimePicker1.Value.ToString()); - 取出来的日期是DateTime类型,有时分秒

private void button2_Click(object sender, EventArgs e)
{
//取时间日期
//MessageBox.Show(dateTimePicker1.Text);
//用value取时间时,可以取选中的值,也可以直接赋值,点击按钮2,dateTimePicker1就会显示赋给value的值
//DateTime dt = Convert.ToDateTime("2001-1-1");
//dateTimePicker1.Value = dt; }

5、Label(显示文字) LinkLabel(超链接模样的Label)可作为按钮使用,有点击事件
    想用 LinkLabel打开网站需要用到进程

private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
MessageBox.Show("aaa"); //Process是一个类,专门控制进程的,默认没有命名空间需要引用,解析一下
Process.Start("Chrome","http://www.baidu.com");
}

6、ListBox 列表框(默认单选)
SelectionMode - MultiExtended 点击一个拖拽只能连续选择 MultiSimple单击就可以单独选择,可以是不连续的
在后台如何获取多选的全部内容用SelectedItems集合,遍历它们

private void button2_Click(object sender, EventArgs e)
{
//获取ListBox 列表框中多选的全部内容
//string a="";
//foreach(object o in listBox1.SelectedItems)
//{
// a += o.ToString()+",";
//}
//MessageBox.Show(a);
}

7、ListView 非常重要,跟数据库绑定,以后单独重点说

8、MaskedTextBox:包含掩码的文本框,区分正确与不正确的用户输入

属性中的Mask用来选择输入的格式,有日期类,数字类,电话号码类等等

9、MonthCalendar:类同于DateTimePicker的时间日期,但是可以连续选择,可以设置选择的时间范围
MaxSelectionCount - 设置选择日期长度
SelectionStart 开始时间 SelectionEnd 结束时间

private void button2_Click(object sender, EventArgs e)
{
//获取MonthCalendar中的时间日期
//获取的是时间区间,开始时间到结束时间
MessageBox.Show(monthCalendar1.SelectionStart.ToString() + "-" + monthCalendar1.SelectionEnd.ToString()); }

10、NotifyIcon:托盘控件(显示在屏幕的右下角)
(1)Visible- 是否显示,课件
(2)Icon - 图标设置
(3)Text - 鼠标一如文本提示

11、NumericUpDown 通过点击上下箭头,增加减少
(1)increment - 单击一下按钮时增加或减少的数量,可以设置
(2)Maximum - 最大值
(3)Minimum - 最小值

12、pictureBox:显示图像
(1)Image - 不好用
(2)BackgroundImage好用,代替Image
(3)BackgroundImageLayout 设置布局格式

13、ProgressBar:进度条
(1)Value - 默认值,可以改写,填写的是数字,但是按照百分比显示长度
(2)Maximum - 最大数值到100.所以显示时Value中的数字可以按照百分比显示
(3)Minimum - 最小值
(4)Style - Marquee 不显示进度的多少,只显示正在进行的状态
(5)MarqueeAnimationSpeed -字幕动画的速度,以毫秒为单位

14、richTextBox - 多行文本框,可以敲回车
text-\r\n这种转义字符可以直接被转换,解析成相应效果

15、TextBox - 文本框,默认单行,它不能转换\r\n这种字符
(1)Multiline - 设为False是单行,设为True是多行,边框的小方框出现可随意拖动大小
(2)WordWarp - 设置为True自动换行,False不自动换行
(3)ScrollBars - None不显示滚动条 Horizontal横向滚动条 Vertical纵向滚动条 Both显示全部滚动条

16、ToolTip:鼠标移入时,关联空间显示的信息,
(1)ToolTipTitle - 也可以输入文字
(2)只要拖进来这个控件,那所有控件的杂项里都会多一条属性“toolTip上的”,拖几个多几个
例如:在richTextBox1的“toolTip上的”里面写上文字,那么运行后鼠标移入richTextBox1时,会显示该文字,可以换行
其他的控件都可以绑定这一个控件上,可以显示不同的内容
(3)作用是用来设置此控件的介绍
      InitialDelay:鼠标移入后多长时间显示提示内容,单位是毫秒
      ReshowDelay :从一个控件移动到另一个控件,间隔多长时间切换提示内容

17、TreeView:树装列表

唯一一个需要用到递归(自己调用自己)加载数据库数据的控件
用法:单击右上角的小黑色箭头,点击编辑节点,在点击添加根,可以添加多个,再单击某个根,可以添加子级,也可以添加多个,可以收,可以放

18、WebBrowser:允许用户创体内浏览网页,可以做浏览器
Url - Uri

private void button3_Click(object sender, EventArgs e)
{
Uri u=new Uri(textBox2.Text);
webBrowser1.Url = u;
}