gpt4 book ai didi

c# - 不同命名空间中的 XAML 转换器

转载 作者:行者123 更新时间:2023-12-04 16:56:06 29 4
gpt4 key购买 nike

我正在 VC2013 中开发一个 c# Windows Phone 8.1 应用程序,并偶然发现了一个奇怪的问题。

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

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

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

使用 IValueConverter来自 converterClass.cs像往常一样,我将以下内容放在我的 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:自动完成确实像往常一样找到我的转换器类,但是在编译(它正在编译)和在设备上测试时,没有一个转换器工作,而且我在错误列表中收到一个错误说
The name 'DateTimeConverter' in namespace 'using:myApp.Converters' does not exist.

我哪里做错了?

最佳答案

哇...在使用 VS2015 并且同样的错误仍然存​​在之后,我玩了一些设置和东西。

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

解决方案与预期不同:

您必须设置 Solution Platformsx86而不是 ARM (我需要在设备上部署)。幸运的是 VS2015 在一个方便的快捷方式中有这个选项,你不能说 VS2013。

不过还是解决了...

关于c# - 不同命名空间中的 XAML 转换器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28873630/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com