1-4 多文档界面处理(3)

简介:

5 通过类的属性进行数据传值

     此次案例我们改变本节案例(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):
     修改录入数据窗口Form2button1_Click事件:
小实验:  修改后Form2button1_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();
            }
        }

1-5  菜单和菜单组件

u   本节学习目标:
n  了解菜单栏、主菜单和子菜单三个概念
n  掌握菜单的快捷方式操作
n  掌握菜单分割条设置
n  学习菜单导航的实际应用

1-5-1 简介

菜单是软件界面设计的一个重要组成方面。它描述着一个软件的大致功能和风格。所以在程序设计中处理好、设计好菜单,对于一个软件开发是否成功有着比较重要的意义。菜单的本质就是提供了将命令分组的一致方法,使得用户易于访问,通过支持使用访问键启用键盘快捷方式,达到快速操纵软件系统的目的。
菜单从分类来说,可以分为菜单栏、主菜单和子菜单三个概念。如图1-26所示:
1-26   菜单栏、主菜单与子菜单

1-5-2  菜单的实践操作

1案例学习:建立简单的菜单

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   菜单最后效果




本文转自 qianshao 51CTO博客,原文链接:http://blog.51cto.com/qianshao/201523,如需转载请自行联系原作者

目录
相关文章
|
8月前
|
C# C++
C#做界面果然比C++方便
C#做界面果然比C++方便
|
存储 前端开发 JavaScript
你可能需要的多文档页面交互方案(一)
你可能需要的多文档页面交互方案
105 1
|
安全 JavaScript 网络协议
你可能需要的多文档页面交互方案(二)
你可能需要的多文档页面交互方案
56 0
最最最常用的就是按钮了吧~ — 常用组件详解(按钮系列)
普通的基础组件自然不能满足我们的日常开发需求,所以小T带大家了解Flutter开发中的常用组件。
最最最常用的就是按钮了吧~ — 常用组件详解(按钮系列)
|
自然语言处理
用控件仅一条指令实现界面换肤和多语言版本(YFSkins)
这一段时间做程序,一直在做界面方面的工作,刚开始是简单的贴图操作,后来感觉不通用,代码重用性不好,并且要做很多基本工作
604 0
|
数据安全/隐私保护