因为毕业设计要用到Winform编程,所以计划用一个月的时间学一下,这篇笔记里包含了上机实操和代码理论两个部分,欢迎前来交流~
另:此篇为C#Winform自学合集第二篇,接上篇(一)
使用教材:《C#Winform实践开发教程 》钱哨 + B站
(B站和CSDN是我名誉教授没错了)
开发环境: Visual Studio 2013 Freamwork 4.0
本篇笔记实践代码:
链接:https://pan.baidu.com/s/16Ow6s90bjczAF4W3U7MnKQ
提取码:1hqh
【导入时选择文件-》打开项目—》点击选择.sln文件即可】
——————————————————正文———————————————
主要用于显示多行文本信息,以供用户选择。
实验目标:
在Form窗体上建立一个列表框空间,窗体初始化的时候加载信息到列表框中,用户单击某一行列表框内的信息时,弹出对话框,显示该行具体的文本信息内容。
实验步骤:
(1)从工具箱中拖拽列表框ListBox控件到Form窗体上,调整控件的基本属性;
在蓝色圈的地方点击那个侧三角,在“编辑项”选项中设置默认内容
(2)双击窗体界面,进入.CS 文件编辑状态:
“窗体初始化加载”事件源代码:
private void Form4_Load(object sender, EventArgs e)
{
this.listBox1.Items.Add("软件部");//通过Add方法对下拉列表控件的信息进行填充
this.listBox1.Items.Add("硬件部");
this.listBox1.Items.Add("财务部");
this.listBox1.Items.Add("人事部");
}
“单击ListBox的某行,获取该行信息”源代码:
//注意学习:ListBox的SelectedIndex属性代表行数
//注意学习:ListBox的SelectedIndex属性代表选中行的内容
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
MessageBox.Show("您选择的部门是:" + listBox1.SelectedItem.ToString() + ",位列第" + listBox1.SelectedIndex.ToString(), "信息提示");
//注意学习:ListBox的SelectedIndex属性代表行数
//注意学习:ListBox的SelectedIndex属性代表选中行的内容
}
(3)为了测试方便,我在主页面中添加了一个LinkLabel控件(见C#Winform自学笔记一),用以连接显示这个新建的Form4窗口,以下是LinkLabel的源码:
private void linkLabel4_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
linkLabel1.LinkVisited = true; //确认超文本文件链接是按照连接后的样式呈现
Form4 newFrom1 = new Form4();//实例化From2chuangti ,命名为newForm
newFrom1.Show();//将实例化后的窗体打开
}
实验结果:
1)启动后的第一个页面,点击蓝色线;
2)弹出第二个窗口(因为我使用了两个添加方法,所以所有内容会出现两次);
单击任意一个选项——
3)弹出了第三个窗口
该组合框控件为典型的多选一控件,主要用于限制用户在多个固定信息的情况下选择唯一一行的文本信息,以确认用户选择逻辑。
实验目标:
在From窗体上建立一个列表框控件、两个组合框控件以及一个文本框控件。
实验步骤:
(1)建立窗体,拖拽一个列表框控件,两个组合框控件以及一个文本框空间到Form窗体上,调整控件属性使其美观。在设置上下两个组合框控件时,分别设置其DropDownStyle属性为DropDown和DropDownList。
①这两种类型呈现的效果完全一样,但是DropDown类型可以读写,另一种则为只读。
②DropDownStyle还有一个属性为Simple,也是只读。此时列表完全展开,类似ListBox
(2)双击窗体界面,进入.CS文件编辑状态,进行开发。
this.comboBox2.SelectedIndex = 1;//设置默认选项
private void Form5_Load(object sender, EventArgs e)
{
this.comboBox1.SelectedIndex = 1;
this.comboBox2.SelectedIndex = 1;//设置默认选项
}
通常用于报错或者信息反馈,用以实现人机交互。
对话窗口通过MessageBox.Show()方法具体体现出来。
重载方法参数 | 说明 |
---|---|
Show(string text) | 显示具有指定文本的消息框 |
Show(string text,string caption) | 显示:指定消息,并指定消息框标题 |
Show(string text,string caption,MessageBoxButtons buttons | 显示:指定消息+标题+确认按钮 |
Show(string text,string caption,MessageBoxButtons buttons,MessageBoxIcon icon | 显示:指定消息,标题,按钮+特定图标 |
实验目标:
在Form窗体上建立一系列的button控件,通过这些按钮的鼠标单击事件呈现出不同的对话框样式。
实验步骤:
(1)从工具箱中拖拽三个button控件和一个Label标签控件到Form窗体上,调整控件基本属性,以达到美观效果;
(2)双击Button控件,进入.CS文件编辑状态,准备进行开发。
“简单提示”按钮鼠标单击事件源代码:
private void button2_Click(object sender, EventArgs e)
{
MessageBox.Show("您选择的是问询提示。", "问询提示");
}
“问询提示”按钮源码:
private void button1_Click(object sender, EventArgs e)
{
DialogResult result = MessageBox.Show("这是问询提示。", "问询提示", MessageBoxButtons.YesNo);
if(result==DialogResult.Yes)
{
label1.Text = "您选择了图标Yes 。";
}
else
{
label1.Text = "您选择了图标NO 。";
}
}
“问询提示”按钮源码:
private void button3_Click(object sender, EventArgs e)
{
DialogResult result = MessageBox.Show("这是复杂提示。", "复杂提示", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question,MessageBoxDefaultButton.Button3,MessageBoxOptions.RightAlign);
if(result==DialogResult.Yes)
{
label1.Text = "您选择了图标Yes。";
}
else if(result==DialogResult.Cancel){
label1.Text = "您选择了图标Cancel。";
}
else
{
label1.Text = "您选择了图标No。";
}
}
重点笔记:
①DianelogResult属性用于获取或设置MessageBox.Show()方法返回的一个值,该值在单击按钮时返回父窗体;
②MessageBoxButtons.YesNo表示提示信息为确认或取消的两周按钮。
③MessageBoxOptions.RightAlign 表示提示信息右对齐
实验结果:
(1)单击MassageBox这个超链接
(2)弹出窗体
(3)点击问询提示,弹出小对话框;点击小对话框中的Yes,Label1(也就是显示文字)发生变化。其余两个按钮也都好用。
1.C# Winform编程是区分大小写的