2013-07-20 20 views
0

好的,所以我有一个带有文本框和一个按钮(表单1)的窗体,并且该按钮打开一个由文本框组成的新窗体(窗体2)。在wpf表单之间引用变量

我想要做的是获取第一种形式的文本框之一(如TextboxForm1.Text)的内容,并使用第二种形式的文本,如TextboxForm2.Text = {however to reference textbox 1 from form 1}.Text;

是否有一种我忽略的显而易见的方式?

谢谢。

编辑:试了两种解决方案,两者都运行良好,但在多个文本框的情况下,它公开是更容易。

+0

是否使用MVVM? – Kurubaran

回答

2

http://msdn.microsoft.com/en-us/library/aa970905.aspx

<TextBox Name="TextboxForm1" x:FieldModifier="Public" /> 
+0

我只想说如果需要的话就让整个控件公开。 –

+0

@GrantThomas我同意,因为WPF强大的数据绑定支持(只是将相同的DataContext传递给两个表单),我实际上建议不要完全设置控件属性......但是,这是最直接的答案,引用文本框1“。 – nmclean

1

是的,你可以使用一个属性从适当的形式公开所需的文本框的值。因此,添加类似以下到你的窗口类:

public string TextBox1Text { 
    get { return TextBox1.Text; } 
} 

然后从实例访问它,你似乎知道,像这样:

AnotherTextBox.Text = instance.TextBox1Text; 

至于使用访问修饰符根据nmclean的回答(即FieldModifier="Public")的控制,我只能说如果需要的话让整个控制公开。