2012-03-31 267 views
1

我有一个xaml页面samplePage.xaml及其对应的.cs文件samplePage.xaml.cs。在这个页面中有一个文本框textBox1。 现在,我创建了页面的一个实例:如何使用C#获取xaml元素?

PhoneApp1.samplePage s = new PhoneApp1.samplePage(); 

,并在那之后,我想通过调用设置文本框中的值:

s.textBox1.Text = "whatever" 

但事实证明,有一个错误消息说

“PhoneApp1.samplePage”不包含关于“textBox1的” 定义和没有扩展方法“textBox1的”接受 型pH的第一个参数oneApp1.samplePage”可以找到(是否缺少使用 指令或程序集引用?)

我想知道如何使用C#代码来获取XAML元素?

+0

这是非常奇怪的,我写一个简短的测试并从C#访问命名的xaml元素在这里完美工作。您能发布更多代码吗? TextBox的xaml和C#调用的位置? – Andrej 2012-03-31 14:24:27

+0

我不认为这种方法将与NavigationService – 2012-03-31 15:30:23

回答

0

您的文本框可能是私人的或受保护的。添加一个包装在你的页面,露出文本框,像:

public TextBox TextBox1 
{ 
    get 
    { 
     return this.textBox1; 
    } 
} 

(介意的情况下)

然后,只需使用该属性从任何你想要的:s.TextBox1.Text = "whatever";

+0

它适合我。 – yifei 2012-05-09 14:50:34

0
+0

一起工作,实际上我以另一种方式解决它,而这确实是一个很好的解决方案。谢谢! – yifei 2012-05-09 14:49:34