ObjectType未在WPF(XAML)中检测到正确的Enum文件

时间:2017-10-03 14:52:12

标签: c# wpf visual-studio xaml

标题可能会产生误导,但我真的不知道它的确切术语。

因此,在解决方案中,有一个名为Enums的文件夹,其中包含3个文件。 (见下图)。其中一个是SudokuDifficultyType.cs。在里面,除了这个基本上什么都没有。

namespace Sudoku_w__SW_WPF.Enums
{
    public enum SudokuDifficultyType
    {
        Easy,
        Medium,
        Hard,
        Impossible
    }
}

所以在MainWindow.xaml中,我想访问这些值。所以我补充道 xmlns:enums="clr-namespace:Sudoku_w__SW_WPF.Enums;assembly=Sudoku_w__SW_WPF" 并尝试通过

访问
<ObjectDataProvider x:Key="SudokuDifficultyEnumValues" MethodName="GetValues" ObjectType="{x:Type enums:SudokuDifficultyType}">
                <ObjectDataProvider.MethodParameters>
                    <x:Type TypeName="enums:SudokuDifficultyType"/>
                </ObjectDataProvider.MethodParameters>
            </ObjectDataProvider>

(顺便说一句,x指的是xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

当我编译它时,它给错误说

  

错误:类型引用找不到名为“SudokuDifficultyType”的公共类型。 13号线位置140.
  错误:名称“SudokuDifficultyType”在名称空间“clr-namespace:Sudoku_w_SW_WPF.Enums; assembly = Sudoku_w__SW_WPF”中不存在。第15行

关于如何使这项工作的任何想法?

其他信息:

  • 大会名称:Sudoku_w__SW_WPF
  • 默认命名空间:Sudoku_w__SW_WPF

任何帮助将不胜感激。 (我尝试用不同的方法固定5小时) 谢谢。

My current VS

上图是我目前在VS2017的工作,有些因个人原因受到审查。

bigger view of error/solutionexplorer 这是错误列表/解决方案资源管理器的更大视图

1 个答案:

答案 0 :(得分:1)

如果在与XAML相同的程序集中定义assembly,请确保命名空间拼写正确并删除enum部分:

xmlns:enums="clr-namespace:Sudoku_w__SW_WPF.Enums"