ga('set', 'anonymizeIp', 1);
Categories: C#Coding

[C#] 子視窗控制父視窗之控件

Share

寫程式必須十分了解目前區塊所能控制的位置。

本文講述如何從子視窗控制父視窗之控件。

假設From1為父(主要)視窗,Form2為子視窗。

假設Form1中有個button1,現在彈出的子視窗要如何控制button1的顏色?

設計:
在Form2中按下button_form2_1這個按鈕會讓Form1中的button1變成綠色,
在Form2中按下button_form2_2按鈕會讓Form1中的button1變成紅色。

Step1: 修改Form1被控制項的「Modifiers」屬性

將button1的「Modifiers」屬性變更為“public”,以供Form2存取。

Step2: Form1程式碼設計如下

namespace LaserIP1
{
    public partial class Form1 : Form
    {
        private Form2 Form2 = null;
        public Form1()
        {
            InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            // 將Form1傳入Form2中
            Form2 = new Form2(this);
            Form2().ShowDialog();
        }
    }
}

Step3: Form2程式碼設計如下

namespace Form1
{
    public partial class Form2 : Form
    {
        private Form1 frm1;
        public Form2(Form1 form)
        {
            InitializeComponent();
            frm1 = form;
        }

        private void button_form2_1_Click(object sender, EventArgs e)
        {
            frm1.button1.BackColor = Color.Green;
            this.Close();
        }

        private void button_form2_2_Click(object sender, EventArgs e)
        {
            frm1.button1.BackColor = Color.Red;
            this.Close();
        }
    }
}
Jys

Published by
Jys

Recent Posts

[python] Flask Create RESTful API

This article gi... Read More

3 年 前發表

[Javascript] 新增/刪除JSON中key值

在web訊息交換常會需要對JS... Read More

3 年 前發表

[JAVA] SQL Server Connection

本文介紹JAVA連線SQL s... Read More

3 年 前發表