Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
196 views
in Technique[技术] by (71.8m points)

winforms - How to pass Form1 value to Form3 in C#

How to pass value of form1 directly to Form3.

In Form1 i have button and a Textbox named txtUsername .

   public string username = string.Empty;
 private void LoginBT_Click(object sender, EventArgs e)
      {
         username = txtUsername.Text;
         Form3 form  = new Form3(username);

         Form2 frm = new Form2();
         frm.Show();
         this.Hide
}

and in From2 i have this

 private void Button_Click(object sender, EventArgs e)
      {
            Form3 form = new Form3();
            form.Show();
            this.Hide();
       }

and in Form3

public string Name;
        public Form3(string CName)
                {

                    InitializeComponent();
                    Name= Cname;
                }

private void frmTicketandCottages_Load(object sender, EventArgs e)
        {
      MessageBox.Show(Name); 
         }

to display the text.

But when i display the text i only get an Empty Text

Any other method to do this ?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Why do you still need to go to form 2 if you want to directly pass the value to form3? Anyway you can do it this way...

form1:

     private void LoginBT_Click(object sender, EventArgs e)
     {
     username = txtUsername.Text;


     Form2 frm = new Form2(username);
     frm.Show();
     this.Hide
     }

form2:

    string Name;
    public Form2(string CName)
            {

                InitializeComponent();
                Name= Cname;
            }

   private void Button_Click(object sender, EventArgs e)
  {
        Form3 form = new Form3(Name);
        form.Show();
        this.Close();
   }

form3:

    string Name;
    public Form3(string CName)
            {

                InitializeComponent();
                Name= Cname;
            }

    private void frmTicketandCottages_Load(object sender, EventArgs e)
            {
                MessageBox.Show(Name); 
            }

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...