C# 无法在XAML中定义对象
总之,我有一个用户控件。在该控件的XAML标记中,我想定义一个资源(安装一个名为C# 无法在XAML中定义对象,c#,wpf,xaml,C#,Wpf,Xaml,总之,我有一个用户控件。在该控件的XAML标记中,我想定义一个资源(安装一个名为cellColorConverter的对象,该对象属于cellColorConverter类,该类与该控件定义在同一命名空间中。我有 <UserControl x:Class="ResourceStudio.Resource.Resource" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
cellColorConverter
的对象,该对象属于cellColorConverter
类,该类与该控件定义在同一命名空间中。我有
<UserControl x:Class="ResourceStudio.Resource.Resource"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d" Height="331.2" Width="340">
<UserControl.Resources>
<ResourceStudio.Resource:CellColorConverter x:Key ="cellColorConverter"/> // <- Error.
</UserControl.Resources>
CellColorConverter
类位于名称空间ResourceStudio.Resource
,定义为
我仍然得到以下错误
名称“CellColorConverter”在命名空间“clr命名空间:ResourceStudio.Resource;assembly=ResourceStudio”中不存在。F:\Camus\ResourceStudio\ResourceStudio\ResourceStudio\Resource\Resource.xaml
在XAML中:
<ResourceStudio.Resource:CellColorConverter />
实际的名称空间和程序集名称取决于您在代码中对它们的调用
提供更多信息
此外,还可以缩短命名空间:
xmlns:local="clr-namespace:..."
<local:CellColorConverter ... >
xmlns:local=“clr命名空间:…”
在XAML中:
<ResourceStudio.Resource:CellColorConverter />
实际的名称空间和程序集名称取决于您在代码中对它们的调用
提供更多信息
此外,还可以缩短命名空间:
xmlns:local="clr-namespace:..."
<local:CellColorConverter ... >
xmlns:local=“clr命名空间:…”
+1非常感谢您的时间。我已经相应地更改了此选项,但我仍然得到名称“CellColorConverter”在命名空间“clr namespace=ResourceStudio.Resource;assembly=ResourceStudio”中不存在的名称?在clr名称空间
之后必须有一个冒号:
而不是=
,比如clr名称空间:ResourceStudio.Resource;assembly=ResourceStudio
@Killercam,您在哪里定义CellColorConverter
类?您必须在字符串中使用该类型的名称空间和程序集名称,如图所示。@DrewNoakes我已经更新了我的问题。我仍然得到一个错误。再次感谢您在这里的时间…@Killercam-如果您的Usercontrol
和Converter
驻留在同一个程序集中,您可以省略程序集部分-xmlns:local=“clr名称空间:ResourceStudio.Resource
+1非常感谢您的时间。我已经相应地更改了它,但是我仍然得到名称“CellColorConverter”在名称空间“clr名称空间=ResourceStudio.Resource;assembly=ResourceStudio”中不存在。”?在clr名称空间
之后必须有一个冒号:
而不是=
,比如clr名称空间:ResourceStudio.Resource;assembly=ResourceStudio
@Killercam,您在哪里定义CellColorConverter
类?您必须在字符串中使用该类型的名称空间和程序集名称,如图所示。@DrewNoakes我已经更新了我的问题。我仍然得到一个错误。再次感谢您在这里的时间…@Killercam-如果您的Usercontrol
和Converter
驻留在同一个程序集中,您可以省略程序集部分-xmlns:local=“clr namespace:ResourceStudio.Resource
。
xmlns:local="clr-namespace:..."
<local:CellColorConverter ... >