Visual Studio 中兩個表單(WinForm)之間相互傳值的方法

來源:互聯網
上載者:User

標籤:相互   bsp   art   點擊   延伸   對話方塊   var   修改   編寫   

編寫WinowsForm應用程式時,實現兩個表單之間相互傳遞值的方法其實很簡單。以下用一個例子說明:在名為FormMain主表單運行過程中利用名為FormInfo表單,擷取使用者輸入資訊,並將這些資訊返回給FormMain

1. FormMain和FormInfo

點擊“修改...”按鈕,顯示FormInfo

 

2. 設定FormInfo中buttonOK和buttonCancal的屬性

3. FormMain代碼

 public partial class FormMain : Form    {        public FormMain()        {            InitializeComponent();        }        private void buttonInfo_Click(object sender, EventArgs e)        {            // 執行個體化FormInfo,並傳入待修改初值              var formInfo = new FormInfo(labelInfo.Text);            // 以對話方塊方式顯示FormInfo              if (formInfo.ShowDialog() == DialogResult.OK)            {                // 如果點擊了FromInfo的“確定”按鈕,擷取修改後的資訊並顯示                  labelInfo.Text = formInfo.Information;            }        }    }

4. FormInfo代碼

public partial class FormInfo : Form    {        public FormInfo()        {            InitializeComponent();        }        /// <summary>        ///     建構函式        /// </summary>        /// <param name="info">待修改的資訊</param>        public FormInfo(string info)            : this()        {            // 在TextBox中顯示資訊初值              textBoxInfo.Text = info;        }        /// <summary>        ///     擷取修改後的資訊        /// </summary>        public string Information        {            get { return textBoxInfo.Text; }        }    }

 

 

5. 運行效果

===========

知識點延伸
知識點1:FormMain和FormInfo是對象。兩表單之間的資訊交換,就是兩個對象之間的資訊交換。很多人迷失在Visual Studio可視化編程介面,編程時把這點拋到九霄雲外啦!

知識點2:在FormMain中buttonOK事件處理函數中,很多人錯誤地認為FormInfo關閉後,它的執行個體formInfo就不存在了。其實,按照C#的規定,這個執行個體一直存在,直到從函數中退出才會銷毀,交給記憶體回收!

 

Visual Studio 中兩個表單(WinForm)之間相互傳值的方法

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.