繁体   English   中英

不同名称空间中的XAML转换器

[英]XAML Converter in different namespace

我正在VC2013中开发ac#Windows Phone 8.1 App,偶然发现了一个奇怪的问题。

为了使我的代码更“干净”,我决定将App的不同部分放入不同的文件夹中。 从c#代码中的这些文件夹中调用XAML页面没有问题。

但是我似乎在XAML代码本身中链接这些文件夹时遇到问题。 例如,我具有以下结构:

root, Files: App.cs+xaml, Mainpage.cs+xaml
|
-- Folder: Login
     |
     -- Files: LoginPage.cs+xaml
-- Folder: Converters
     |
     -- Files: converterClass.cs

要像往常一样使用converterClass.csIValueConverter ,请将以下内容放在XAML文件的标题中:

<Page
 x:Class="myApp.Login.LoginPage"
 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
 xmlns:local="using:meinStundenplaner.Login"
 xmlns:myConverter="using:myApp.Converters"
 xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
 xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
 mc:Ignorable="d"
 Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">

<Page.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="../Styles/standardStyles.xaml"/>
        </ResourceDictionary.MergedDictionaries>

        <myConverter:DateTimeConverter x:Key="DateTimeConverter" />
        ... some more converters

    </ResourceDictionary>
</Page.Resources>
...

现在发生的是,如果我键入<myConverter:自动<myConverter:全确实会像通常那样找到我的转换器类,但是在编译(正在编译)和在设备上进行测试时,所有转换器都无法正常工作,并且在错误列表中显示错误

The name 'DateTimeConverter' in namespace 'using:myApp.Converters' does not exist.

我哪里做错了?

哇...使用VS2015后,同样的错误仍然存​​在,我在设置和内容方面玩了一些。

我一直很好奇,为什么即使它引发了很多错误,它也仍会编译和部署。 问题似乎不一致。

解决方案与预期不同:

您必须将Solution Platforms设置为x86而不是ARM (我需要在设备上进行部署)。 幸运的是,VS2015在便捷的快捷方式中提供了此选项,您无法对VS2013这么说。

不过解决了...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM