此次案例我们改变本节案例(1)数据传值的方法,通过建立类的属性将数据传递过去。
u 实验步骤(1):
为传值目标窗口Form3定义相关属性信息如下:
小实验: Form3目标传值窗体属性定义以及Load加载事件源代码:
public partial class Form3 : Form { public Form3() { InitializeComponent(); } //建立私有变量 private string some_name, email_address, topic, option; //属性姓名 public string SomeName { get { return some_name; } set { some_name = value; } } //属性电子邮件 public string Someemail { get { return email_address; } set { email_address = value; } } //属性主题 public string Sometopic { get { return topic; } set { topic = value; } } //属性意见 public string Someoption { get { return option; } set { option = value; } } private void Form3_Load(object sender, EventArgs e) { listBox1.Items.Add(SomeName); listBox1.Items.Add(Someemail); listBox1.Items.Add(Sometopic); listBox1.Items.Add(Someoption); } } |
---|
u 实验步骤(2):
修改录入数据窗口Form2的button1_Click事件:
小实验: 修改后Form2的button1_Click事件源代码:
private void button1_Click(object sender, EventArgs e) { if (textBox1.Text == "" || textBox2.Text == "") { MessageBox.Show("姓名,或者邮件信息禁止为空!", "信息提示"); } else { this.Hide(); Formcc2 childForm2 = new Formcc2(); childForm2.SomeName = textBox1.Text; childForm2.Someemail = textBox2.Text; childForm2.Sometopic = comboBox1.SelectedItem.ToString(); childForm2.Someoption = richTextBox1.Text; //原来的代码内容:childForm3.Show(); //下面是更改后的代码内容 childForm2.MdiParent = this.MdiParent; childForm2.Show(); } } |
---|
u 本节学习目标:
n 了解菜单栏、主菜单和子菜单三个概念
n 掌握菜单的快捷方式操作
n 掌握菜单分割条设置
n 学习菜单导航的实际应用
菜单是软件界面设计的一个重要组成方面。它描述着一个软件的大致功能和风格。所以在程序设计中处理好、设计好菜单,对于一个软件开发是否成功有着比较重要的意义。菜单的本质就是提供了将命令分组的一致方法,使得用户易于访问,通过支持使用访问键启用键盘快捷方式,达到快速操纵软件系统的目的。
菜单从分类来说,可以分为菜单栏、主菜单和子菜单三个概念。如图1-26所示:
图1-26 菜单栏、主菜单与子菜单
(1)建立Winform窗体并从工具箱的菜单和工具栏中拖放一个MenuStrip控件到窗体上。如图1-27所示:
图1-27 拖放一个MenuStrip控件到窗体上
(2)可以直接点击MenuStrip控件填写主菜单及子菜单名称,但是需要注意菜单命名时候避免直接录入汉字的问题。因为如果直接键入汉字命名菜单,则该菜单项的Name属性将出现汉字,不利于C#的编程。如图1-28所示。
图1-28 直接的中文命名不利于程序开发
虽然上述设计不会出现代码错误,但是建议采用点击MenuStrip控件,选择该控件的Items属性,在展开的项目集合编辑器中直接设置的办法。如图1-29为打开Items属性后的项目集合编辑器。
图1-29 打开items属性后的项目集合编辑器
(3)如果在命名时候在Text属性处键入“文件(&F)”,将会产生“文件(F)”的效果,&将被认为是快捷键的字符。运行时候为alt+f键执行。同理,子菜单在命名时候可以相同的效果。如图1-29中的Text属性所示。
(4)设置每个菜单项的ShortCutKeys属性。每个菜单项都有一个ShortCutKeys的属性,该项属性为用户自定义的快捷菜单组合键设置项。如图1-30所示,但注意在进行设置时候一方面要根据windows操作系统的常用快捷菜单设置,如退出一般是(alt+E),打开一般是(ctrl+O)等,另一方面至少需要一项修饰符和键的组合,否则将出错。
图1-30 设置菜单的快捷键
(5)在需要进行分割的时候,可以选择Separator选项进行功能性的分割,如图1-31所示。
图1-31 为菜单设置分割条
(6)最后形成菜单效果如图1-32所示
图1-32 菜单最后效果