【问题标题】:Problems Binding with a GridView UWP与 GridView UWP 绑定的问题
【发布时间】:2016-06-19 16:15:54
【问题描述】:

我的应用中有一些错误的绑定页面和 cmets 的另一个页面。第一个工作正常,但第二个不显示数据(21 cmets)加载成功。 我一直在查看实时的 Live Property Explorer,第一个 Grid 有这些选项:

但是,第二个将 ItemsSource 设置为 null:

这应该是不可能的,因为这些项目具有相同的代码,只是进行了一些更改以使它们加载不同。 这里有代码:

<Page.Resources>
        <DataTemplate x:DataType="data:Book" x:Key="BookDataTemplate">
            <StackPanel HorizontalAlignment="Center">
                <Image Width="150" Height="150" Source="{x:Bind CoverImage}" />
                <StackPanel HorizontalAlignment="center" Orientation="Horizontal">
                    <TextBlock FontSize="10" Text="{x:Bind DScore}" HorizontalAlignment="Center" Foreground="#FF21C721" />
                    <TextBlock FontSize="10" Text="{x:Bind DFav}" HorizontalAlignment="Center" Foreground="#FF9C9C9C" />
                </StackPanel>
                <TextBlock FontSize="16" Text="{x:Bind Title}" HorizontalAlignment="Center" Foreground="White" />
                <TextBlock FontSize="10" Text="{x:Bind Author}" HorizontalAlignment="Center" Foreground="#FF9C9C9C" />
                <ToolTipService.ToolTip>
                    <TextBlock Text="{x:Bind DData}"/>
                </ToolTipService.ToolTip>
            </StackPanel>
        </DataTemplate>
    </Page.Resources>

<GridView ItemsSource="{x:Bind Books}" AllowDrop="True" IsSwipeEnabled="True" IsItemClickEnabled="True" ItemClick="Content_ItemClick" Name="Content" Margin="0,100,0,40" CanReorderItems="True" 
                  CanDragItems="True"
                  ItemTemplate="{StaticResource BookDataTemplate}" ReorderMode="Enabled"/>

还有评论网格视图:

    <Page.Resources>
        <DataTemplate x:DataType="data:Comment" x:Key="CommentDataTemplate">
            <StackPanel HorizontalAlignment="Center">
            <Grid>
                <Rectangle Margin="50, 0, 0, 30" Fill="#FF144772" Height="100" Stroke="Black" Width="500" HorizontalAlignment="Center"/>
                <Rectangle Margin="60, 0, 0, 45" Fill="#FF031131" Height="60" Stroke="Black" Width="60" HorizontalAlignment="Left"/>
                <Rectangle Margin="140, 0, 0, 25" Fill="#FF103F91" Height="60" Stroke="Black" Width="360" HorizontalAlignment="Left"/>
                <Image x:Name="image" HorizontalAlignment="Left" Height="50" Margin="65,18,0,0" VerticalAlignment="Top" Width="50" Source="Assets/profile.png"/>
                <StackPanel HorizontalAlignment="center" Orientation="Horizontal">
                    <TextBlock Margin="0, 70, 400, 0" FontSize="10" Text="{x:Bind Date}" HorizontalAlignment="Center" Foreground="#FF9C9C9C" />
                </StackPanel>
                <TextBlock Margin="130, 0, 0, 0" FontSize="16" Text="{x:Bind Author}" HorizontalAlignment="Left" Foreground="White" />
                <TextBlock Margin="150, 30, 0, 0" FontSize="11" Text="{x:Bind Body}" Width="360" HorizontalAlignment="Left" Foreground="#FF9C9C9C" />
                <ToolTipService.ToolTip>
                    <TextBlock Text="{x:Bind Score}"/>
                </ToolTipService.ToolTip>
            </Grid>
                </StackPanel>
        </DataTemplate>
    </Page.Resources>

<GridView ItemsSource="{x:Bind Comments}" AllowDrop="True" IsSwipeEnabled="True" IsItemClickEnabled="True" Name="Content" Margin="0,100,0,40" CanReorderItems="True" 
                            CanDragItems="True"
                            ItemTemplate="{StaticResource CommentDataTemplate}" ReorderMode="Enabled"/>

有人可以帮我找出这里的问题吗?

【问题讨论】:

    标签: c# asp.net windows gridview uwp


    【解决方案1】:

    在第二页的 XAML 文件中,转到 ItemsSource 中的“评论”,然后按 F12。如果您可以导航到 Comments 的定义,则意味着您的绑定成功,但 Comments 没有被填充。如果您无法导航到定义,则意味着绑定不起作用。在这种情况下,检查是否已为该页面设置了数据上下文。还要检查“评论”在 XAML 和属性中的拼写方式。

    【讨论】:

    • 已修复 感谢您的帮助!
    猜你喜欢
    • 2017-07-20
    • 2020-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-27
    • 2013-10-11
    • 1970-01-01
    相关资源
    最近更新 更多