我最近在一个更大的项目中遇到了一些问题,但为了解决这个问题,我用两个令人难以置信的基本文件制作了一个新的解决方案。它是一个WPF C#项目,主窗口包含一个按钮,以及一个包含文本块的用户控件。我已经将它们链接到了Blend中,这样当我点击按钮时,usercontrol就会出现。但是,当我添加代码以更改来自主窗口的usercontrol的文本块中的文本时,它给了我这个错误:非静态字段,方法或属性需要对象引用TestingUserControls.TestControl.sampleText.get'C#,UserControls:我无法修改txtBlock.Text,它给出了“非静态方法需要的对象引用”错误!
我喜欢用户控件,我们在整个项目中都使用它们,但由于某种原因,我无法让它们正常工作。
为我的用户的代码是这样的:
public TestControl()
{
this.InitializeComponent();
}
public string sampleText
{
get { return blkTest.Text; }
set { blkTest.Text = value; }
}
主窗口中的代码是这样的:
public MainWindow()
{
InitializeComponent();
}
private void button1_Click(object sender, System.Windows.RoutedEventArgs e)
{
TestControl.sampleText.set("Sup");
}
说实话,我在谷歌周围挖了一段时间,试图找到答案后,我改变了我的代码。我确定它没有更好的,但最初我没有在用户控件和主窗口中我有“blkTest.Text =”测试!!!!“ – zack 2010-10-29 05:13:00
@zack:问题仍然存在? – Ani 2010-10-29 05:20:17
不,你只是修复了整个一周都让我头痛,我的小组和我一直在试图弄清楚为什么我们无法在用户控件上设置数据,现在我们知道了,我不敢相信它太简单了!感谢您的快速帮助。 – zack 2010-10-29 05:23:02