adh*_*eek 8 wpf xaml user-controls prism
我真的需要更多关于造成这种情况的想法,目前它正在推动我的发展.
我有一个Xaml用户控件,其中包含另一个用户控件,如下所示:
<UserControl x:Class="MyModule.View.MainView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:igDock="http://infragistics.com/DockManager"
xmlns:views="clr-namespace:MyModule.View"
>
<StackPanel x:Name="panel">
<views:MyHeaderView/>
<igDock:XamDockManager x:Name="dockingManager"/>
</StackPanel>
</UserControl>
Run Code Online (Sandbox Code Playgroud)
这是在Prism模块中(因此是MyModule名称),但我不认为这是特别不寻常的.
现在,只要我在标题视图中添加名称,代码就无法编译,例如
<views:MyHeaderView x:Name="header"/>Run Code Online (Sandbox Code Playgroud)
我得到的错误很简单:
"The type name 'View' does not exist in the type MyModule.MyModule'"
我已经尝试将包含的用户控件移动到另一个命名空间,创建一个空白的用户控件并尝试使用它(相同的结果)并删除XamDockManager,但似乎没有任何区别.
任何人都可以对此有所了解吗?
我想我找到了答案.
如果我将模块类重命名为MyModuleThingy,则编译.似乎问题出现是因为模块类与包含它的命名空间(MyModule.MyModule)具有相同的名称.
如果有人能让我知道为什么这可能是一个问题,我会非常有兴趣知道.特别是因为我继承了许多代码,这些代码似乎是Prism特定实现中的常见模式.