0

我有 MainPage 类,我可以使用此代码编辑 XAML 文本框的内容

box1.Text = "";

但是尝试从另一个类编辑文本框,以下代码将不起作用

MainPage.box1.Text = "";

错误是“非静态字段、方法或属性‘class.MainPage.box1’需要对象引用我已经尝试了所有方法,比如制作静态函数和在另一个类中创建新的 MainPage 对象,但没有任何效果

4

2 回答 2

2

XAML 文本框位于 MainPage.xaml/.cs

文本框的值设置器在某个 X 类中。

您在以下语句中出现错误的原因是 box1 不是静态的,您需要 MainPage 的一个实例。

MainPage.box1.Text = "";

但不只是任何实例。您需要当前实例。所以类 X 中的方法需要接收 MainPage.xaml.cs 类的“THIS”实例,然后更改 box1 的值。

函数调用:

X xobj=new X();
xobj.ChangeboxValue(this);

功能:

void ChangeboxValue(MainPage obj)
{
obj.box1.Text=""
}
于 2012-11-09T19:08:01.030 回答
0

您正在尝试访问MainPage没有对象实例的类的静态字段。

您需要一个MainPage类的实例才能像这样访问它:

MainPage myPage = new MainPage();
myPage.box1.Text = "";
于 2012-11-09T18:50:22.770 回答