DataTemplate x:绑定名称空间错误

ins*_*eof 2 c# xaml visual-studio uwp

我对使用Visual Studio 2015进行Windows 10 UWP开发有疑问.

我正在尝试根据教程为我的GridView使用DataTemplate .我遇到的问题是我的命名空间.

由于显而易见的原因,我不允许分享我的确切代码,但我想知道你们中的一个人是否可能遇到过这个问题.我得到了与这个人几乎相同的错误(错误代码0x09c4),除了我的DataTemplate在我的代码隐藏文件中,不像他/她那样全局.除了那个错误,我也得到了虚幻的"_name在命名空间_namespace中不存在".

这是我的一个xaml文件:

<Grid>
...
    <GridView ItemsSource="{x:Bind ViewModel.AssessExItems}">
        <GridView.ItemTemplate>
            <DataTemplate x:DataType="local:AssessExItem">

            </DataTemplate>
        </GridView.ItemTemplate>
    </GridView>
</Grid>
Run Code Online (Sandbox Code Playgroud)

我知道DataTemplate是空的,但即使我输入了某些东西,它仍然无效.这是我的xaml文件的代码隐藏文件:

public sealed partial class AssessmentExample1Screen : Page
{
    public AssessExItemViewModel ViewModel { get; set; }

    public AssessmentExample1Screen()
    {
        this.InitializeComponent();
        this.ViewModel = new AssessExItemViewModel();
    }
}

public class AssessExItem
{
    public int _assessment_id { get; set; }
    public string name { get; set; }
    public string surname { get; set; }
    public string date { get; set; }

    //public EmpAssessItem() { }
}

public class AssessExItemViewModel
{
    private ObservableCollection<AssessExItem> exampleItems = new ObservableCollection<AssessExItem>();
    public ObservableCollection<AssessExItem> AssessExItems { get { return this.exampleItems; } }

    public AssessExItemViewModel()
    {
        //for (int i = 1; i < 3; i++)
        //{
        this.exampleItems.Add(new AssessExItem()
        {
            name = "Cat 777",
            surname = "Botha",
            date = "2015-03-22"
        });
        //}
        this.exampleItems.Add(new AssessExItem()
        {
            name = "XZR 678",
            surname = "Botha",
            date = "2015-03-22"
        });
        this.exampleItems.Add(new AssessExItem()
        {
            name = "TBL 123",
            surname = "Botha",
            date = "2015-03-22"
        });
    }
}
Run Code Online (Sandbox Code Playgroud)

请帮忙.

Sun*_* Wu 6

我转载了你的问题.如何解决:清理,构建或重建解决方案.然后我测试了它,它的工作原理.我想最常见的原因是build可以更新文件mainpage.g.cs,它决定了在哪里找到数据类型.

   <GridView ItemsSource="{x:Bind ViewModel.AssessExItems}">
        <GridView.ItemTemplate>
            <DataTemplate x:DataType="local:AssessExItem">
                <StackPanel Height="100" Width="100" Background="OrangeRed">
                    <TextBlock Text="{x:Bind name}"/>
                    <TextBlock Text="{x:Bind  surname}" x:Phase="1"/>
                    <TextBlock Text="{x:Bind date}" x:Phase="2"/>
                </StackPanel>
            </DataTemplate>
        </GridView.ItemTemplate>
    </GridView>
Run Code Online (Sandbox Code Playgroud)