【问题标题】:Gridview is not displaying text in Windows Store AppsGridview 不在 Windows 应用商店应用程序中显示文本
【发布时间】:2016-05-25 04:50:12
【问题描述】:

我在 Windows 8.1 App 中使用过 Gridview 控件。

以下是 xaml 代码

                <GridView x:Name="gviewNavigation"
                                  Grid.Column="1"
                                  Margin="0,0,0,5"
                                  IsItemClickEnabled="True"
                                  ItemClick="gvClick"
                                  ScrollViewer.HorizontalScrollMode="Enabled"
                                  ScrollViewer.HorizontalScrollBarVisibility="Hidden"
                                  ScrollViewer.IsHorizontalRailEnabled="True">
                            <GridView.ItemsPanel>
                                <ItemsPanelTemplate>
                                    <VirtualizingStackPanel Orientation="Horizontal" />
                                </ItemsPanelTemplate>
                            </GridView.ItemsPanel>
                            <GridView.ItemTemplate>
                                <DataTemplate>
                                    <Grid Background="Red"
                                          Width="300">
                                        <Grid.RowDefinitions>
                                            <RowDefinition Height="*" />
                                            <RowDefinition Height="*" />
                                        </Grid.RowDefinitions>
                                        <TextBlock FontSize="15"
                                                   Margin="20,12"
                                                   HorizontalAlignment="Center"
                                                   TextWrapping="Wrap"
                                                   Text="{Binding text}"
                                                   VerticalAlignment="Center"
                                                   Foreground="{StaticResource BlackBrush}"
                                                   FontFamily="{StaticResource PhoneFontFamilyNormal}" />
                                        <Image Source="/Images/orange_underline@2x.png"
                                               Grid.Row="1"
                                               Visibility="{Binding is_alert,Converter={StaticResource stringVis}}"
                                               Height="2"
                                               Width="300"
                                               x:Name="imgOrg"
                                               Stretch="UniformToFill" />
                                    </Grid>
                                </DataTemplate>
                            </GridView.ItemTemplate>
                        </GridView>

以下是 C# 代码

 gviewNavigation.ItemsSource = list;

我通过 Textblock 的 Text 属性的转换器确认绑定有效。

但是绑定的文本是不可见的。

相同的代码适用于 Windows phone 8.1。

请帮忙!!

【问题讨论】:

  • 你检查你的输出窗口了吗?尝试删除 FontFamily 或使用任何默认值。

标签: c# asp.net xaml windows-runtime windows-store-apps


【解决方案1】:

静态资源 PhoneFontFamilyNormal 样式仅适用于手机项目,不适用于桌面项目

【讨论】:

  • 删除 PhoneFontFamilyNormal 无效。文本仍然不可见
  • 我猜是“{Binding text}”的问题。检查绑定属性是否具有公共 get 。如果这没有帮助,请发布应用程序的 c# 代码。
【解决方案2】:

将 GridView Itemtemplate 的 Grid Rowdefinition 设置为 Auto 解决了这个问题。

 <Grid.RowDefinitions>
    <RowDefinition Height="auto" />
    <RowDefinition Height="auto" />
 </Grid.RowDefinitions>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多