UWP Textblock展开

时间:2017-04-01 17:04:34

标签: uwp expand textblock

使用UWP,我有一个显示数据行的网格,一列数据可以包含TextBlock中的一些大量文本。我想将行定义高度限制为80(MaxHeight),所以它看起来都是均匀的(ish),但如果其中一个TextBlocks中有大量文本,我想显示一个“展开”按钮,删除该行高度限制,因此可以在TextBlock中看到所有文本。

这可能吗?什么是最好的方法,我看过VisualStateManagers,触发器(他们在UWP中的哪个位置!?)和用户控件 - 任何想法?

以下XAML用于使用DataTemplate显示网格中的数据:

<DataTemplate x:Key="ListItem">
    <Grid HorizontalAlignment="Stretch" Opacity="{Binding Master, Converter={StaticResource BooleanToOpacity}}">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="28" />
            <ColumnDefinition MaxWidth="100" />
            <ColumnDefinition MaxWidth="100" />
            <ColumnDefinition />
            <ColumnDefinition MaxWidth="100" />
            <ColumnDefinition MaxWidth="100" />
            <ColumnDefinition MaxWidth="100" />
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" MaxHeight="200" />
        </Grid.RowDefinitions>

        <TextBlock Grid.Column="0" Text="&#xEADF;" FontSize="16" Padding="2" Style="{StaticResource IconTextBlock}" Foreground="{ThemeResource SystemControlForegroundAccentBrush}" />
        <TextBlock Grid.Column="1" Text="{Binding Code}" Style="{StaticResource ListViewTextBlock}" />
        <TextBlock Grid.Column="2" Text="{Binding Ref1}" Style="{StaticResource ListViewTextBlock}" />
        <TextBlock Grid.Column="3" Text="{Binding Description}" Style="{StaticResource ListViewTextBlock}" TextWrapping="Wrap" MaxHeight="84" x:Name="tbDescription" />
        <TextBlock Grid.Column="4" Text="{Binding State}"  Style="{StaticResource ListViewTextBlock}" />
        <TextBlock Grid.Column="5" Text="{Binding SubType}"  Style="{StaticResource ListViewTextBlock}" />
        <TextBlock Grid.Column="6" Text="{Binding Category}"  Style="{StaticResource ListViewTextBlock}" />
    </Grid>
</DataTemplate>

这是描述TextBlock,我想让用户“扩展”。

0 个答案:

没有答案