windows常用控件

控件的分类和作用:
控件分类
作用
文本类控件
可以在控件上显示文本
选择类控件
主要为客户提供选择的项目
分组控件
可以将窗体中的控件进行分组处理
菜单控件
为系统制作功能菜单,将应用程序命令分组,使他们更容易进行查询
工具栏控件
提供了主菜单中常用的相关工具
状态栏控件
用于显示窗体上的对象的相关信息,或者可以显示应用程序的相关信息
锁定控件:单击Locked属性并选择true,还可以右击控件,选择“锁定控件”命令,如果要锁定所有控件,则:“格式/锁定控件”。
文本类控件
(Label标签,Button按钮,TextBox文本框控件,RichTextBox有格式文本控件)
设置可见性:Label1.Visible=true;
将按钮设置为窗体”接受“按钮,就是按下回车键就相当于单击该按钮
private void Form1_Load(object sender,EventArgs e)
{
this.AcceptButton=button1;
}
将按钮设置为窗体”取消“按钮,就是按下ESC键就相当于单击该按钮
private void Form1_Load(object sender,EventArgs e)
{
this.CancelButton=button1;
}
创建为只读框:
private void Form1_Load(object sender,EventArgs e)
{
TextBox1.ReadOnlyRead=true;
}
创建密码文本框:
private void Form1_Load(object sender,EventArgs e)
{
TextBox1.PasswordChar='@';
TextBox1.UseSystemPasswordChar=true;
}

突出显示文本框的文本:
private void Form1_Load(object sender,EventArgs e)
{
textBox1.Multiline=true;
textBox1.Text="春眠不觉晓,处处闻啼鸟,夜来风雨声,花落知多少";
textBox1.Height=100;
textBox1.SelectionStart = 5;//选中文本开始位置
textBox1.SelectionLength = 5;//选中文本长度
textBox1.Focus();
}
响应文本框的文本更改事件:
private void textBox1_TextChanged(object sender, EventArgs e)
{
label1.Location = new Point(5, 5);
label1.Text = textBox1.Text;
}
有格式文本控件RichTextBox:
RichTextBox用于显示输入操作带有格式的文本。RichTextBox除了可以显示textBox的全部格式,还可以显示字体,颜色和链接,从文件加载文本和嵌入的图像,撤销和重复编辑操作以及查找指定的字符。
1.用RichTextBox显示滚动条
通过设置 RichTextBox控件的multiline属性,可以控制控件是否显示滚动条,multiline设置为true,则显示滚动条,设为false则不显示滚动条。下面是multiline属性的属性值及说明。
属性值
说明
Both
只有文本长度超过文本框的长度时,显示两条滚动条
None
从不显示任何滚动条
Horizontal
只有当文本长度超过文本框宽度的时候,显示水平文本框。WordWrap为false时才会出现这种情况
Vertical
只有当文本高度超过文本框高度时才会显示垂直滚动条
ForceHorizontal
WordWrap为false时,显示水平滚动条,文本未超过长度,滚动条为灰色
ForceVertical
始终显示垂直滚动条
ForceBoth
始终显示垂直滚动条,WordWrap为false时,显示水平的,如果未超过长度,则灰色

wordwrap指多行文本框控件在必要的时候是否自动换行到下一行的开始。为true时,无论ScrollBars属性是什么,也永远不会显示水平滚动条。
实现代码:
private void Form2_Load(object sender, EventArgs e)
{
richTextBox1.Multiline = true;
richTextBox1.ScrollBars = RichTextBoxScrollBars.Both;

}

RichTextBox控件中设置字体属性:

private void Form2_Load(object sender, EventArgs e)
{
richTextBox1.Multiline = true;
richTextBox1.ScrollBars = RichTextBoxScrollBars.Both;

}
RichTextBox控件中设置超链接:
private void richTextBox1_LinkClicked(object sender, LinkClickedEventArgs e)
{
System.Diagnostics.Process.Start(e.LinkText);//设置超链接
}
RichTextBox控件中设置段落格式:
可以通过SelectionBullet属性将选定的段落设置为项目符号列表的格式。也可以用SelectionIndent和SelectionHangingIndent属性设置段落相对于控件的左右边缘进行缩进。
具体实现:
richTextBox1.SelectionBullet = true;
设置控件中数据左边缘和右边缘为8:
richTextBox1.SelectionHangingIndent = 8;
richTextBox1.SelectionIndent = 8;
选择类控件:
(ComBox下拉框控件,CheckBox复选框控件,RadioButton单选按钮控件,NumericUpDown数值选择控件,ListBox列表控件)

ComBox下拉框控件 ,用于在下拉组合框中显示数据,由两部分组成:第一部分,允许用户输入列表项的文本框;第二部分,一个列表框,显示一个选项列表,用户可以从中选择一项。
1创建只可以选择的下拉框
通过设置DropDownStyle属性,将ComBox控件设置为可以选择的下拉框。DropDownStyle属性有3个属性,这3个属性对应不同的样式。
Simple:使ComBox控件的列表部分总是可见的
DropDown:DropDownStyle属性的默认值。使用户可以编辑ComBox控件的文本框部分,只有单击右侧的箭头才能显示列表部分。
DropDownList:用户不能编辑ComBox控件的文本框部分。呈现下拉框的样式。
将控件的DropDownStyle属性设置为DropDownList,用户就只能是进行下拉的操作,不能编辑文本内容框内容部分的内容。
private void Form4_Load(object sender, EventArgs e)
{
comboBox1.DropDownStyle = ComboBoxStyle.DropDownList;
comboBox1.Items.Add("陈亚乔");
comboBox1.Items.Add("李璇");
comboBox1.Items.Add("在一起");
}
2.选中下拉组合框中可编辑的所有文本
实现方法:public void SelectAll();
使用前将DropDownStyle属性设置为DropDown.才能进行此操作。
3.响应下拉组合框的选项值更改事件
其实就是在comboBox1_SelectedIndexChanged方法中写要响应的事件。
CheckBox复选框控件
1.判断复选框是否被选中
通过在控件的Click事件中判断控件的CheckState属性,来判断复选框是否被选中。CheckStatus属性有两个值Checked和Unchecked。
private void checkBox1_Click(object sender, EventArgs e)
{
if(checkBox1.CheckState==CheckState.Checked)
{
MessageBox.Show("CheckBox控件被选中");
}
else
{
MessageBox.Show("CheckBox控件选择被取消。");
}
}
2.当控件状态发生改变,触发checkBox1_CheckStateChanged事件。
private void checkBox1_CheckStateChanged(object sender, EventArgs e)
{
MessageBox.Show("控件状态发生改变");
}
RadioButton单选按钮控件
1.判断单选按钮是否选中
通过在控件中的Click事件中判断控件的Checked属性的返回值是否为true。
private void radioButton1_Click(object sender, EventArgs e)
{
if(radioButton1.Checked==true)
{
MessageBox.Show("RadioButton1控件被选中");
}
}

private void radioButton2_Click(object sender, EventArgs e)
{
if(radioButton2.AutoCheck==true)
{
MessageBox.Show("RadioButton2控件被选中");
}
}
2.相应单选按钮选中状态更改事件
当控件的选中状态发生更改时,会引发控件的CheckChangeed事件。
private void radioButton_1CheckChanged(object sender,EventArgs e)
{
MessageBox.Show("RadioButton1控件的选中状态发生更改。")
}
private void button1_Click(object sender,EventArgs e)
{
radioButton1.Checked=true;
}
private void button2_Click(object sender,EventArgs e)
{
radioButton1.Checked=false;
}
private void From_Load(object sender,EventArgs e)
{
radioButton1.Checked=false;
}
MumericUpDown数值选择控件
MunericUpDown控件是一个显示和输入数值的控件,该控件具有一对向上和向下的箭头,点上下和输入都可以修改其中的数值,该控件有Maximum和Mininum两个属性,分别设置最大和最小值。如果输入的数值超过其最大和最小值。就会一直保持该数值。
1获取 MunericUpDown控件中显示的值
private void Form1_Load(object sender,EventArgs e)
{
numericUpDown1.Maximum=20;
numericUpDown1.Minimum=1;
}
provate void numericUpDown1_ValueChanged(object sender,EventArgs e)
{
label.Text="当前控件中的值是:"+numericUpDown1.Value;
}
2设置NumericUpDown控件中数值的显示方式
NumericUpDown控件的DecimalPlaces属性用于确定在小数点后显示几位数。默认为0,ThousandsSeparator属性用于确定是否每3个十进制数字位就插入一个分隔符,默认为false。如果将ThousandsSeparator属性设置为true,则该控件可以用十六位进制显示值,默认设置位false。
设置方法:numericUpDown1.DecimalPlces=2;

ListBox列表控件
1在list控件中添加和移除项
分别对应LsitBox控件的Item属性的Add和Remove方法。可以添加或者移除ListBox控件中的项目。
private void button1_Click(object sender,EventArgs e)
{
if(textBox1.Text=="")
{
MessageBox.Show("输入要添加的数据");
}
else
{
listBox1.item.add(textbox1.text);
textbox1.Text="";
}
}
private void button2_Click(object sender,EventArgs e)
{
if(listBox1.SelectedItems.Count==0)
{
MessageBox.Show("输入要删除的数据");
}
else
{
listBox.Items.Remove(listBox1.SelectedItem);
}

2创建总显示滚动条的列表控件
通过设置控件的HorizontalScrolBar属性和ScrollAlwaysVisible属性可以使控件总显示滚动条。如果将HorizontalScrolBar属性设置为true则显示水平,如果将ScrollAlwaysVisible属性设置为true则显示垂直。
设置方法:listBox1.ScrollAlwaysVisible=true;
。。。
listBox控件中可以使用MultiColumn属性指示该控件是否支持显示多列。
3在listBox控件中选择多列
在listBox控件中的SelectionMode属性可以实现。
设置方法:
listBox1.SelectionMode=SelectionMode.(上面的枚举成员);
显示选择项目的数量:
listBox1.SelectedItems.Count.Tostring();
分组类控件
分组类控件主要包括:Panel容器控件、GroupBox分组框控件、TabControl选项卡控件。
Panel容器控件
使用Panel控件的show方法可以显示控件。
public void Show()
GroupBox分组框控件
GroupBox控件主要为其他控件提供分组。按照窗体的分组来细分窗体的功能。其在所包含的控件集周围总是显示边框,并且可以显示标题。GroupBox没有滚动条。
语法:public override string Text{get;set;}
TabControl选项卡控件
TabControl控件可以添加多个选项卡,然后在选项卡上添加子控件。这样就可以把窗体设计成多页,选项卡控件还可以用于创建用于设置一组相关属性的属性页。
TabControl控件包含选项卡页,TabPage控件表示选项卡,TabControl控件的TabPages属性表示其中的所有TabPage控件的集合,TabPages集合中的TabPage选项卡的顺序反映了TabControl控件中的选项卡的设置。
1改变选项卡的显式样式
举例:创建一个windows应用程序,向窗体中添加一个ImageLsit控件,然后将图像添加到ImageList控件的图像列表中,将TabControl控件的ImageList属性设置为ImageList控件,将TabPage的ImageIndex属性设置为列表中相应的图像的索引。
private void Form1_Load(object sender,EventArgs e)
{
tabControl1.ImageList=imageList1;
//设置控件的ImageLsit属性为ImageList1
tabPage1.ImageIndex=0;
tabPage1.Text=“选项卡1”;
tabPage2.ImageIndex=1;
tabPage2.Text=“选项卡2”;
}
备注:为了使用户更加了解选项卡的作用,可以在鼠标移入选项卡时,弹出一个提示信息,对当前选项卡的作用或者操作步骤有一个描述的相关说明,设置步骤为:将tabPage属性中的ShowToolTips属性设置为true,然后在tabPage属性的ToolTipText属性输入相关描述信息。
将选项卡设置为按钮
tabControl控件的Appearance属性设置为Buttons或FlatButtons,即可将选项卡设置位按钮样式。如果设置位Buttons,则有三维按钮外观,如果设置为FlatButtons,则具有平面按钮外观。
设置方法:tabControl1.Apprearance=TabApprearance.Buttons;
2在选项卡中添加控件
如果要在选项卡中添加控件,可以通过TabPage的Control属性的Add方法进行实现。
private void Form1_Load(object sender,EventArgs e)
{
tabControl1.ImageList=ImageList1;
tabPage1.ImageIndex=0;
tabPage2.ImageIndex=1;
Button btn1=new Button();
btn1.Text="新增的按钮";
tabPage1.Controls.Add(btn1);
}
3添加和移除选项卡
在默认情况下,TabControl控件包含两个TabPage控件,可以使用TabPages属性的Add方法添加新的选项卡。
实现方法:
string Title="新增选项卡"+(tabControl.TabCount+1).ToString();
//声明一个字符串变量,用于生成新增选项卡的名称
TabPage myTab=new TabPage(Title);
tabControl.TabPages.Add(myTab);
可以使用TabPages属性的Remove方法进行移除控件中的选项卡。
实现方法:
if(tabControl1.SelectedIndex==0)
{
MessageBox.Show("请选择需要删除的选项卡");
}
else
{
tabControl1.TabPages.Remove(tabControl1.SelectedTab);
}
删除控件中的所有选项卡:
实现方法:tabControl1.TabPages.Clear();

菜单、工具栏和状态控件

菜单是窗体应用程序主要的用户要素,工具栏为应用程序提供了操作系统的界面,状态栏显示系统的一些状态信息。
MenuStrip菜单控件
MenuStrip控件支持多文档界面、菜单合并,工具提示和溢出,可以通过添加访问键、快捷键、选中标记、图像和分隔条,来增强菜单的可用性和可读性。
(输入名称&F就会变成F,然后可以使用ALT+F打开)
ToolStrip工具栏控件
可以创建具有windows XP、Office、Internet Explorer或自定义的外观和行为的工具栏及其他用户界面元素。这些元素支持溢出以及运行时重新排序。
StatusStrip状态栏控件
StatusStrip控件通常处于窗体最底部,用于显示窗体上对象的相关信息,或者显示应用程序的信息。通常,StatusStrip控件由ToolStripStatusLabel对象组成,每个这样的对象都可以显示文本、图标或者同时显示这两者。StatusStrip还可以包括ToolStripDropDownButton、ToolStripSplitButton和ToolStripProgressBar控件。
举例:创建一个windows应用程序,使用StatusStrip控件制作状态栏,在状态栏中显示当前日期。以及ToolStripProgressBar控件,单击”加载“,加载进度条。
private void Form1_Load(object sender,EventArgs e)
{
//在任务栏显示系统当前日期
this.toolStripStatusLabel2.Text=DateTime.Now.ToShortDateString();
}
private void button1_Click(object sender,EventArgs e)
{
this.toolStripProgressBar1.Minmum=0;//进度条最小值
this.toolStripProgressBar1.Maxmum=5000;
this.toolStripProgressBar1.Step=2;//进度条增值
for(int i=0;i<=4999;i++)
{
this.toolStripProgressBar1.PerformStep();
//按照Step属性增加进度条当前位置
}
}


猜你喜欢

转载自blog.csdn.net/qq_36750158/article/details/79821598