C# 不带xmlns:xxx引用的Wpf UserControl
是否可以在XAML中引用一个用户控件,就像它只是另一个普通控件而不引用local:SomeUserControlName一样 例如: 而不是C# 不带xmlns:xxx引用的Wpf UserControl,c#,wpf,wpf-controls,C#,Wpf,Wpf Controls,是否可以在XAML中引用一个用户控件,就像它只是另一个普通控件而不引用local:SomeUserControlName一样 例如: 而不是 <local:MyUserControl Prop1="" Prop2=""/> XmlnsDefinition用于外部程序集的XAML控件。它不能用于同一程序集中的控件,因为XAML编译器需要事先了解这些控件 将自定义控件移动到单独的项目中将允许您使用XmlnsDefinition引用,因为它将单独编译。还要注意,将自己的代码转储到其他组件
<local:MyUserControl Prop1="" Prop2=""/>
XmlnsDefinition
用于外部程序集的XAML控件。它不能用于同一程序集中的控件,因为XAML编译器需要事先了解这些控件
将自定义控件移动到单独的项目中将允许您使用
XmlnsDefinition
引用,因为它将单独编译。还要注意,将自己的代码转储到其他组件区域已经存在的相同XML命名空间中是非常糟糕的形式,出于同样的原因,在系统
命名空间中声明所有用户代码将是一种糟糕的形式。名称空间的存在是有原因的。您可能会发现,如果您使用一个或两个字母作为XML名称空间名称,那么为您的类型使用和声明名称空间就不会那么麻烦了。例如,使用l:
而不是local:
。
<MyUserControl Prop1="" Prop2=""/>
[assembly: XmlnsDefinition("http://schemas.microsoft.com/winfx/2006/xaml/presentation",
"AssemblyName")]