You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

UWP报错:命名空间using:MyFirstApp.common中不存在DataToStringConverter

解决XAML中无法引用自定义转换器的问题

我在项目下创建了名为common的文件夹,并在其中创建了DataToStringConverter.cs文件。在将其作为StaticResource使用时,按如下方式引用却始终报错:

'the name "DataToStringConverter" does not exist in the namespace "using:MyFirstApp.common"'

已清理解决方案并重新生成,但问题仍未解决,请问是否遗漏了某些设置?

相关代码

App.xaml

<Application
    x:Class="MyFirstApp.App"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:MyFirstApp"
    xmlns:common="using:MyFirstApp.common"
>

    <Application.Resources>
        
        <common:DataToStringConverter x:Key="DateTimeConverter"/> <!-- 报错行 -->
        
    </Application.Resources>

</Application>

DataToStringConverter.cs

namespace MyFirstApp.common
{
    public class DataToStringConverter : IValueConverter
    {
        public object Convert(object value, Type targetType, object parameter, string language)
        {
             throw new NotImplementedException();
        }
        
        public object ConvertBack(object value, Type targetType, object parameter, string language)
        {
             throw new NotImplementedException();
        }
    }
}

可能的解决步骤

  • 确认类的访问修饰符:确保DataToStringConverter类是public(你的代码中已设置,但需避免误设为internal),XAML只能访问公共类。
  • 检查命名空间大小写:XAML对命名空间大小写敏感,确认代码中的MyFirstApp.common和XAML引用的using:MyFirstApp.common完全一致,包括文件夹名称的大小写(比如文件夹实际是Common但命名空间写common会导致匹配失败)。
  • 验证文件生成操作:右键DataToStringConverter.cs文件,打开属性面板,确认生成操作设置为编译(Build Action = Compile)。如果设为“内容”或其他选项,编译时不会将该类纳入程序集,XAML自然找不到。
  • 检查项目目标框架:若为UWP项目,确认目标框架版本与项目配置一致,框架版本不匹配可能导致引用失效。
  • 手动确认项目文件引用:打开项目的.csproj文件,检查是否包含如下条目:
    <Compile Include="common\DataToStringConverter.cs" />
    
    若缺失,手动添加后重新加载项目。
  • 彻底清理重建:删除项目目录下的bin和obj文件夹,再重新生成整个解决方案,避免残留的编译文件干扰。

内容的提问来源于stack exchange,提问作者ricky rocky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 17:33:24