我在窗口textBoxQuery
中有一个textBox QueryWindow
。
我需要在另一个窗口textBoxQuery
中访问Text
的{{1}}。
我在MainWindow
中有以下访问者:
QueryWindow
我尝试在public string QueryString
{
get { return textBoxQuery.Text; }
set { textBoxQuery.Text = value; }
}
中使用它:
MainWindow
但是,我遇到cmdLine += QueryString;
错误。 “非静态字段,方法或属性需要对象引用。”
我还尝试在CS0120
中实现以下方法:
QueryWindow
然后在public string queryString()
{
return textBoxQuery.Text;
}
中使用以下内容:
MainWindow
但以上都没有奏效。
我搜索了Google,但我找到的解决方案似乎都没有。从另一个窗口/类访问控件属性的正确方法是什么?
答案 0 :(得分:0)
哦!
评估者用于访问类型为QueryWindow
的类(对象)的实例!
基本上,你可以通过这样做来创建一堆查询窗口(每个窗口都是它们自己的实例):
QueryWindow myQueryWindow1 = new QueryWindow();
myQueryWindow1.show()
QueryWindow myQueryWindow2 = new QueryWindow();
myQueryWindow2.show()
// Note, the shows are only needed to make instances visible to the user.
只要您引用myQueryWindow1
或myQueryWindow2
,就可以使用访问者来获取实例的状态:
string myString = myQueryWindow1.queryString();
所以QueryWindow.queryString()
不起作用,因为程序无法告诉你想要哪个QueryWindow实例!
希望这有帮助!