Domanda

Sto cercando di fare un TabControl al ridimensionamento automatico in base al suo spazio esterno (è in uno StackPanel):

<Window x:Class="Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Height="100">
    <Grid>
        <StackPanel>
            <TabControl 
                BorderBrush="Red" 
                BorderThickness="2" 
                VerticalAlignment="Stretch" 
                VerticalContentAlignment="Stretch">

                <TabItem Header="Tab1"/>
                <TabItem Header="Tab2"/>
            </TabControl>
        </StackPanel>
    </Grid>
</Window>

Il frammento precedente produce il seguente finestra, mentre io voglio il bordo rosso per raggiungere il fondo della finestra:

alt text

È stato utile?

Soluzione

Il problema è il tuo StackPanel. StackPanels non allungare i loro figli.

Al contrario, utilizzare un DockPanel: L'ultima bambino sarà allungato per riempire lo spazio rimanente (vedi LastChildFill , che per default è true).

<Window x:Class="Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Height="100">
    <Grid>
        <DockPanel>
            <TabControl BorderBrush="Red" BorderThickness="2">
                <TabItem Header="Tab1"/>
                <TabItem Header="Tab2"/>
            </TabControl>
        </DockPanel>
    </Grid>
</Window>

impostando esplicitamente VerticalAlignment non è necessaria, dal momento che suo default valore è già Stretch.

collegamento: Pannelli Panoramica su MSDN

Altri suggerimenti

È possibile associare l'altezza effettiva altezza della finestra padre.

<TabControl 
    BorderBrush="Red" 
    BorderThickness="2"
    Height="{Binding Path=ActualHeight,
         RelativeSource={RelativeSource Mode=FindAncestor,
            AncestorType={x:Type Window}}}">
    <TabItem Header="Tab1"/>
    <TabItem Header="Tab2"/>
</TabControl>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top