Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 让对象向主页发送消息_C#_Silverlight_Events_Data Binding_Static - Fatal编程技术网

C# 让对象向主页发送消息

C# 让对象向主页发送消息,c#,silverlight,events,data-binding,static,C#,Silverlight,Events,Data Binding,Static,我有一个类Target和一个静态属性,在另一个类中称为points。每次用户点击目标时,我都想增加分数。我将点放在不同的静态类中的原因是,每个目标对象都可以访问它。 问题是显示点的文本块存在于主页面中,而不是每个目标对象中。既然我不能将我的XAML绑定到静态属性,那么我如何才能使每个目标对象都能以某种方式让主页知道它应该更新points textblock?感谢您的建议类Target和其他Class.points是否在同一名称空间内?如果是,可能有以下帮助: /* In Window class

我有一个类
Target
和一个静态属性,在另一个类中称为
points
。每次用户点击目标时,我都想增加分数。我将
放在不同的静态类中的原因是,每个
目标
对象都可以访问它。
问题是显示点的文本块存在于主页面中,而不是每个目标对象中。既然我不能将我的XAML绑定到静态属性,那么我如何才能使每个目标对象都能以某种方式让主页知道它应该更新points textblock?感谢您的建议

类Target和其他Class.points是否在同一名称空间内?如果是,可能有以下帮助:

/* In Window class */
Window w = new Window();

/* function where Target get hit */
w = this;
/* code to update points */
w.textbox1.Text = AnotherClass.points.ToString();

您完全可以在这里应用MVVM模式。如果存在绑定到主窗口的静态视图模型,则可以在每次属性更改时发出通知,并且视图(显示数据的所有绑定窗口)将自动更新(重新绑定)

我建议检查Laurent Bugnon的框架。它有很多这样的管道为你做,所以所有需要做的是从你这边把零件放在一起,并正确地绑定它们

以下是一些值得检查的资源:

  • (仍适用于 Silverlight作为一种方法学)
如果你需要样品,看看