Frage

Ich versuche, eine Ansicht mit einem Datagrid eines Gitters Teiler zu entwerfen und zu einer Bodenplatte, die einige Nachrichten enthält. So etwas wie:

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="*"/>
        <RowDefinition Height="10"/>
        <RowDefinition Height="Auto"/>
    </Grid.RowDefinitions>

    <toolkit:DataGrid Grid.Row="0" {details...} />
    <GridSplitter Grid.Row="1" {details...} />
    <TextBox Grid.Row="2" {details...} />
</Grid>

Das Layout sieht perfekt aus - das Raster füllt die Mehrheit der Ansicht, und ich habe den Splitter das Textfeld am unteren Rande bei Bedarf zu erweitern. Das Problem ist, dass das Datagrid wird sehr groß und ich brauche die Virtualisierung aktiviert. Dies funktioniert nur, wenn eine explizite Höhe in den Behälter des Gitters gegeben ist glaube ich?

Gibt es eine Möglichkeit, das Layout zu bekommen Ich möchte (wo das Netz alle verfügbaren Raum füllt), sondern auch haben die Virtualisierung aktiviert?

War es hilfreich?

Lösung

  

Gibt es eine Möglichkeit, das Layout zu bekommen Ich möchte (wo das Netz alle verfügbaren Raum füllt), sondern auch haben die Virtualisierung aktiviert?

Virtualisierung sollte in Ordnung im Szenario arbeiten Sie beschreiben, solange die Eltern des Grid wird es nicht bis ins Unendliche in der vertikalen Richtung zu messen. Wenn das der Fall wäre, der Splitter nicht funktionieren würde.

Wie Bestimmen Sie, dass die Zeilen in Ihrem Datagrid nicht virtualisiert werden?

Beachten Sie, dass das Datagrid nicht eine explizite Höhe in Ihrem Szenario hat. Genauer gesagt, misst die Mutter Grid noch das Datagrid auf eine explizite Höhe (den vertikalen Raum im Gitter verbliebenen für die anderen Reihen nach Berücksichtigung).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top