当前位置: 首页 > wzjs >正文

h5商城网站怎么做怎样开自己的网站

h5商城网站怎么做,怎样开自己的网站,新桥做网站公司,wordpress订单推送微信版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的 当项目中有多个窗体时(在本节中为两个窗体:Form1和Form2),窗体间传递数据有以下几种方…

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的

当项目中有多个窗体时(在本节中为两个窗体:Form1和Form2),窗体间传递数据有以下几种方法。

7.8.1 在公共类中定义公共变量

VB.Net中可以在模块中定义全局变量作为整个项目的变量,但是在C#中没有模块概念,只能考虑使用公共类的公共变量。

【例 7.5【项目:code7-005】通过公共类的公共变量传递数据。

通过菜单【项目】|【添加模块】,或者右击【解决方案资源管理器】项目名称,在弹出菜单中单击【添加】|【类】。在【添加新项】窗口中使用默认的模块名称“Class1.cs”,单击【添加】按钮。

在Class1.cs的代码中定义:

static public string passParameter;

在Form1中增加一个Button控件,在Form2上增加一个Label控件。

Form1中的代码:

        private void button1_Click(object sender, EventArgs e)

        {

            //设置公共变量的值

            Class1.passParameter = "公共变量";

            //定义Form2类型

            Form2  frm2 = new Form2();

            //显示Form2

            frm2.ShowDialog();

        }

Form2中的代码:

        private void Form2_Load(object sender, EventArgs e)

        {

            label1.Text = Class1.passParameter;

        }

运行结果如下图所示:

图7-15 Form2上显示字符串

7.8.2 Form1中的数据传递到Form2方法1

【例 7.6【项目:code7-006】修改Form2的构造函数传递数据。

在Form2的代码中找到构造函数:

        public Form2()

        {

            InitializeComponent();

     }

在Form2后面的括号内输入:

string passParameter

这就是我们需要传递的参数。

增加一个窗体级的变量,同时完善代码。修改后的代码如下:

        string passedParameter;

        public Form2(string passParameter)

        {

            InitializeComponent();

            this.passedParameter = passParameter;

     }

注意:不能删除 InitializeComponent(),否则会影响窗口的设计,只需要在InitializeComponent()后面增加代码即可。

在Form2上增加一个label控件,同时修改Form2_Load事件代码:

        private void Form2_Load(object sender, EventArgs e)

        {

            label1.Text = passedParameter;

        }

Form1中设置按钮按下事件的代码:

        private void button1_Click(object sender, EventArgs e)

        {

            Form2 frmNew = new Form2("这是Form1传递给Form2的字符串");

            frmNew.ShowDialog();

        }

运行结果如下图所示:

图7-16 在Form2窗体上显示传递的数据

7.8.3 Form1中的数据传递到Form2方法2

【例 7.7【项目:code7-007】修改Form2中变量的访问级别。

先在Form2中定义一个Public级别变量,然后在Form1中定义(实例化)Form2后,就可以使用这个变量了。

Form2中的代码:

        public string passedParameter;

        private void Form2_Load(object sender, EventArgs e)

        {

            label1.Text = passedParameter;

        }

Form1中的代码:

        private void button1_Click(object sender, EventArgs e)

        {

            Form2  frmNew=new Form2();

            frmNew.passedParameter = "这是Form1传递给Form2的字符串";

            frmNew.ShowDialog();

        }

运行结果同【例 7.7】。

7.8.4 Form2中的数据传递回Form1方法1

【例 7.8【项目:code7-008】定义Form1类型的项目公共变量。

将Program.cs中的代码修改为:

        public static Form1 newForm1;

        [STAThread]

        static void Main()

        {

            Application.EnableVisualStyles();

            Application.SetCompatibleTextRenderingDefault(false);

            newForm1 = new Form1();

            Application.Run(newForm1);

        }

在Form1中添加1个Label控件和2个Button控件,在Form2中添加1个Button,名称均使用默认名称。

Form1中的代码如下:

public string passedWords;

        private void button1_Click(object sender, EventArgs e)

        {

            Form2 newForm2 = new Form2() ;

            newForm2.ShowDialog();

        }

        private void button2_Click(object sender, EventArgs e)

        {

            label1.Text = passedWords;

        }

在Form2中加入一个按钮,按钮单击代码:

        private void button1_Click(object sender, EventArgs e)

        {

            Program.newForm1.passedWords = "这是Form2传递回Form1的字符串";

            this.Close();

        }

由于Program.newForm1是公共变量,因此在Form2中可以调用它。

点击Form1上的Button1,出现Form2,在点击Form2上的Button1,此时将TextBox1中的文本传递给了Form1的变量passedWords,同时Form2关闭。然后单击Form1上的Button2,Label1的文本将变为变量passedWords的内容。

图7-19 在Form1窗体上显示传回的数据

如果仅仅是为了修改Form1上Label1的文本,可以将Form1.Designer.cs中的代码

private System.Windows.Forms.Label label1;

修改为:

public System.Windows.Forms.Label label1;

然后直接在Form2的Button1按下事件中使用如下代码:

        private void button1_Click(object sender, EventArgs e)

        {

            Program.newForm1.label1.Text = "这是Form2传递回Form1的字符串";

            this.Close();

        }

7.8.5 Form2中的数据传递回Form1方法2

【例 7.9【项目:code7-009】使用窗体的Owner属性。

在Form1中添加1个Label控件和1个Button控件,在Form2中添加1个Button,名称均使用默认名称。

将Form1.Designer.cs中的代码

private System.Windows.Forms.Label label1;

修改为:

public System.Windows.Forms.Label label1;

Form1中的代码如下:

    public string passedWords;

        private void button1_Click(object sender, EventArgs e)

        {

            Form2 newForm2 = new Form2();

            //Form1(Me)设置为Form2的所有者

            newForm2.ShowDialog(this);

        }

        private void button2_Click(object sender, EventArgs e)

        {

            label1.Text = passedWords;

        }

Form2中的代码如下:

        private void button1_Click(object sender, EventArgs e)

        {

            Form1 frm;

            //通过Form2的所有者获得Form1

            frm = (Form1)this.Owner;

            frm.label1.Text = "这是Form2传递回label1的字符串";

            frm.passedWords = "这是Form2传递回passedWords的字符串";

            this.Close();

     }

运行结果如下图所示:

图7-20 在Form1窗体上显示传回的数据

学习更多vb.net知识,请参看vb.net 教程 目录

学习更多C#知识,请参看C#教程 目录

http://www.dtcms.com/wzjs/159496.html

相关文章:

  • 西安网站快速优化最新重大新闻
  • 建设监理收录网站互动营销案例都有哪些
  • 网站开发课程建议免费的网页设计成品下载
  • 武汉博晟做的网站广告外链购买交易平台
  • 专业团队为您服务的句子西安seo代理计费
  • wordpress自定义播放器seo软件视频教程
  • 用c做网站搜索引擎营销seo
  • phpcmsv9网站建设入门教程seo在线推广
  • 如何做网站首页优化广告投放网站平台
  • 网站导航这么做新闻稿
  • 网站变移动网站竞价软件哪个好
  • 苏州建设银行招聘网站网站流量统计
  • 广德网站开发百度竞价排名收费
  • 电子商务网站建设 臧良运 好不好免费发布推广信息的平台有哪些
  • 网站开发人员爱站在线关键词挖掘
  • 罗湖商城网站建设哪家效益快百度新版本更新下载
  • 天津做网站哪家比较好ip域名查询网
  • 电梯行业网站怎么做图片搜索
  • wordpress 制作安装包优化培训课程
  • 葫芦岛网站制作互联网营销师报名入口
  • 网站建设项目申请百度竞价推广方案
  • 怎样弄网站营销策划公司主要做些什么
  • 东莞网站优化是什么app下载推广
  • wordpress两个站合并市场营销互联网营销
  • 自建网站好建吗国外免费网站服务器
  • 武汉网站建设的有哪些公司亚马逊跨境电商
  • 做58类网站需要多少钱网络营销做的好的企业
  • 网站权重优化方式杭州做搜索引擎网站的公司
  • 免费做销售网站流量平台
  • 品牌设计公司排名品牌形象广告惠州seo网站管理