(忍受我,我还在学习WPF,尤其是MVVM!)
我编写了一个验证规则,并在XML中编写了样式和所有内容。我遇到一个我无法理解的小问题,而且XAML说命名空间不存在。在XAML标题中,我添加了这个:
xmlns:validators="clr-namespace:New_ComplaintManager.ViewModels"
在我的文本框中,我有这个:
validators:RequiredFields ErrorMessage="username is required." />
然而XAML说:
The tag 'RequiredFields' does not exist in XML namespace
'clr-namespace:New_ComplaintManager.ViewModels'.
但ViewModel包含:
namespace New_ComplaintManager.ViewModels
{
class RequiredField
{
public class RequiredFields : ValidationRule
所以我被卡住了。我错过了一些非常明显的东西,或者我搞砸了某个地方。我甚至读过这本指南:XAML MSDN Guide无济于事。任何帮助都会很棒。这虽然是一次很好的学习经历!
答案 0 :(得分:1)
请按以下方式进行更改
namespace New_ComplaintManager.ViewModels
{
public class RequiredFields : ValidationRule
{
}
}
请删除以下行
class RequiredField
需要删除上面的类,因为它没有公开定义,并且外部不会知道您的RequiredFields类。
答案 1 :(得分:1)
正如Ashok Rathold已经回答的那样 - 我加上我的2美分:尝试使用完整的声明,如
xmlns:validators="clr-namespace:clr-namespace:New_ComplaintManager.ViewModels;assembly=your_assembly"