Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 无法在XAML中定义对象_C#_Wpf_Xaml - Fatal编程技术网

C# 无法在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"

总之,我有一个用户控件。在该控件的XAML标记中,我想定义一个资源(安装一个名为
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 ... >