Winform在一個窗體獲取其他窗體的值


比如:Form2獲取Form1 的label的值

 

因為默認的窗體的所有控件屬性和方法都是private,

Form1 form1 = new Form1(); 這樣也是獲取不到的

 

方法一、最簡單的

將Form1里將要獲取的控件屬性Modifiers設置為public

Form2里獲取Form1的label1的值:

string s = ""; 
Form1 form1 = new Form1();
s= form1.label1.Text;

這樣就可以獲取到Form1的label1的值

 

方法二、構造函數法:

Form2要獲取Form1的值

(1)Form2中添加帶參構造函數,用於接收Form1傳過來的值

int value1;
string value2;
public Zjdy(int value1,string value2)
{
    InitializeComponent();
    this.value1 = value1;
    this.value2 = value2;

}

(2)Form1中,實例化Form2,傳給Form2,Show一下看看傳的值

Form2 form2=new Form2("222");
form2.Show();

 

 

方法三、比如,保存登錄用戶名供其他頁面調用

步驟:
(1)項目自帶的Program.cs,類方法里定義登錄的用戶名為全局變量loginid,這樣整個項目都可以調用它
 
static class Program
    {
        public static string loginid = ""; static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Login());  } }
(2)在登錄窗體的登錄按鈕事件里,將登錄框輸入的用戶名保存到上面的全局變量,ok
Program.loginid = this.username.Text;
(3)當在其他窗體調用登錄的用戶名時,只需
string loginid = Program.loginid;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM