这应该是WPF初学者的问题,但我找不到简单的答案。如何处理在WPF中声明的对象?
<Window x:Class="Testprj" xmlns:local="clr-namespace:Testprj">
<Window.Resources>
<local:CustomValidation x:Key="validationObj"/>
</Window.Resources>
</Window>
如果我没弄错的话,上面的代码正在使用键“validationObj”创建一个“CustomValidation”对象的实例。现在,假设每个“CustomValidation”对象都有一个名为“ myInstanceVar ”的实例变量,如何从后面的代码中获取myInstanceVar的值?
我想要做的就是(伪代码):
validationObj.myInstanceVar
但它甚至无法找到“validationObj”。有什么想法吗?
答案 0 :(得分:2)
我相信你问的是如何从后面的代码中使用该对象。我相信this.FindResource("validationObj")
可以解决问题。
var valObj = (CustomValidation)this.FindResource("validationObj");
var whatever = valObj.myInstanceVar;
答案 1 :(得分:0)
你问如何访问代码隐藏中的XAML中声明的控件
使用x:name
而不是在你的代码隐藏中使用poo
http://msdn.microsoft.com/en-us/library/ms752290.aspx
通常你不应该有一个代码,并使用MVVM设计模式来避免它。
这是一个很好的起点: MVVM: Tutorial from start to finish?