Сетка и свернутый контент WPF - PullRequest
0 голосов
/ 17 августа 2010

У меня есть окно с этим основным макетом:

<Window
    MinHeight="72" MaxHeight="400" Height="Auto"
    MinWidth="460" MaxWidth="460">
    <DockPanel>
        <!-- Footer -->
        <StackPanel DockPanel.Dock="Bottom">
            ...
        </StackPanel>

        <Grid>
            <Grid.RowDefinitions>
                <RowDefinition Height="40" />
                <RowDefinition Height="Auto" MinHeight="0"/>
                <RowDefinition Height="Auto" MinHeight="0" MaxHeight="40" />
            </Grid.RowDefinitions>

            <StackPanel>
                <!-- Header -->
            </StackPanel>

            <TextBlock Grid.Row="1" Visibility="{My Fancy Binding To collapse this}" ... />

            <TextBlock Grid.Row="2" Visibility="{My Fancy Binding To collapse this}" ... />
        </Grid>
    </DockPanel>
</Window>

То, чего я пытаюсь добиться, - это компактное окно, когда два текстовых блока внизу имеют видимость = "Свернутый", и расширяется до максимальной высоты, установленной, когда они не.

Это нормально работает для <Grid>, но кажется, что независимо от того, как я переставлю свою компоновку, я не могу заставить окно пытаться использовать минимальное пространство, оно всегда находится в максимальном размере с много бесполезных пробелов.

Что происходит:

+-----------------------------------+
| Header                            |
+-----------------------------------+
+-----------------------------------+
+-----------------------------------+
|                                   |
| Wasted Space I want to            |
| "collapse"                        |
|                                   |
+-----------------------------------+
| Footer                            |
+-----------------------------------+

Что я хочу:

+-----------------------------------+
| Header                            |
+-----------------------------------+
+-----------------------------------+
+-----------------------------------+
+-----------------------------------+
| Footer                            |
+-----------------------------------+

Or Effectively:

+-----------------------------------+
| Header                            |
+-----------------------------------+
| Footer                            |
+-----------------------------------+

1 Ответ

2 голосов
/ 17 августа 2010

Я думаю, что вы ищете, это SizeToContent = "Высота" в окне.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...