Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.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
Visual studio 在xaml静态资源中引用C++/CLI类 我目前正在开发一个Windows 8.1的应用程序,我想插入一个静态C++类 static ref class BooleanToVisibleConverter sealed : IValueConverter_Visual Studio_Xaml_C++ Cli - Fatal编程技术网

Visual studio 在xaml静态资源中引用C++/CLI类 我目前正在开发一个Windows 8.1的应用程序,我想插入一个静态C++类 static ref class BooleanToVisibleConverter sealed : IValueConverter

Visual studio 在xaml静态资源中引用C++/CLI类 我目前正在开发一个Windows 8.1的应用程序,我想插入一个静态C++类 static ref class BooleanToVisibleConverter sealed : IValueConverter,visual-studio,xaml,c++-cli,Visual Studio,Xaml,C++ Cli,进入另一个xaml文件中的资源列表: <Application.Resources> <local:BooleanToVisibleConverter x:Key="BoolConvert"/> </Application.Resources> 尽管我一直在努力尝试,但还是不断出现以下错误: 命名空间中不存在名称BooleanToVisibleConverter(使用:App15) 信息:本地:使用:APP15,它是C++文件的命名空间。 我尝试了所

进入另一个xaml文件中的资源列表:

<Application.Resources>
    <local:BooleanToVisibleConverter x:Key="BoolConvert"/>
</Application.Resources>
尽管我一直在努力尝试,但还是不断出现以下错误: 命名空间中不存在名称BooleanToVisibleConverter(使用:App15)

信息:本地:使用:APP15,它是C++文件的命名空间。


我尝试了所有可能的名称空间,但我自己无法做到这一点。

这里可能还有其他问题,例如XAML文件中的名称空间声明,但关于类定义,我有两件事要做:

您需要将您的类声明为公共类。公共参考类。。。 静态在这里什么都不做。 您可能会收到一条编译器警告:我收到了警告C4091:“static”:当没有声明变量时,在“BooleanToVisibleConverter”左侧忽略 在C的意义上,它不是静态的,它只应用于它出现的文件中。 它不是一个静态类,也就是说,在C意义上不是贪得无厌的:IValueConverters需要实例化才能工作,而C++/CLI为此使用了不同的语法。
切换到public ref类BooleanToVisibleConverter…,然后看看这是怎么回事。

c++和c++-cli是两种完全不同的语言。c++-cli和c++/cx是两种完全不同的语言扩展。切换到public不会改变任何事情。要在资源中检索该类,该类不需要是静态的吗?不需要将该类声明为公共的,但它不会造成任何伤害,但它不能是静态的。否则,您无法创建它的实例,而您希望在中执行此操作。