Domanda

In un'applicazione Windows 8.1 (.NET 4.5) ho (attraverso due modelli, a causa del vincolo) una griglia che contiene uno stackpanel che contiene un ListView. La cosa è che ListView non è scalabile con lo spazio disponibile, mostra invece una barra di scorrimento.

<Grid DataContext="{Binding}">
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="*"/> <!-- IF I set MinHeight here, it grows -->
    </Grid.RowDefinitions>
    <TextBlock Grid.Row="0"/>
    <ListView
            Grid.Row="1"
            Margin="10"
            ItemsSource="{Binding ementas}"
            ItemTemplate="{StaticResource temp1}"
            SelectionMode="None"
            IsItemClickEnabled="False"
            IsSwipeEnabled="False">
    </ListView>
</Grid>
.

Modello per ListView

<StackPanel Width="310" Margin="5,10,5,10" DataContext="{Binding}">
    <TextBlock Text="{Binding data}" Style="{StaticResource TitleTextBlockStyle}"/>
    <ListView SelectionMode="None"
            IsItemClickEnabled="False"
            ItemsSource="{Binding pratos}"
            ItemTemplate="{StaticResource temp2}"
            IsSwipeEnabled="False">
    </ListView>
</StackPanel>
.

E il modello per il secondo elenco

<TextBlock Text="{Binding descricao}"
    Margin="5"
    Style="{StaticResource BodyTextBlockStyle}"
    TextWrapping="WrapWholeWords"/>
.

Screenshot: screenshot

Mi piacerebbe per la valida di listview con la barra di scorrimento per avere la scala della dimensione per adattarsi al contenuto e solo scorrere se esaurisce lo spazio dello schermo.

È stato utile?

Soluzione

Questo è un problema estremamente comune ... Il StackPanel non ridimensiona il suo contenuto per adattarsi al controllo genitore come fa un Grid.La soluzione è semplice ... non utilizzare un StackPanel ad eccezione del più semplice il rivestimento di alcuni compiti di controllo.Invece di questo, utilizzare un Grid che si adatta automaticamente a tutti gli spazi forniti dai controlli dei genitori.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top