To pytanie jest trudne do opisania w sposób zwięzły, więc nie bierz mnie.Rozmiar siatek WPF
Obecnie mam siatkę z dwoma rzędami. Wysokość pierwszego wiersza to Auto, a wysokość drugiego wiersza to *, więc gdy zmieniam rozmiar okna, drugi wiersz rośnie i kurczy się zgodnie z oknem.
Jest to podstawowy układ:
<Window>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Border>
...
</Border>
<Border Grid.Row="2">
...
</Border>
</Grid>
</Window>
Oto biedny szkic istniejącego zachowania:
____ ____ ____
-> ->
____ ____ ____
____
____
____
chciałbym dodać coś w rodzaju „minimalnej wysokości” z drugiego rzędu , więc gdy zmieniam rozmiar okna na tyle mały, drugi rząd przestaje się kurczyć, a pierwszy wiersz zaczyna się zmniejszać.
pożądanego zachowania:
____ ____ ____
-> -> ____
____ ____
____
____
____
Czy istnieje prosty sposób, aby uzyskać minimalną wysokość dla drugiego rzędu, a pierwszy z nich zmusić się kurczyć?
Więcej szczegółów:
Kiedy ustawić MinHeight w drugim rzędzie, po prostu klipów siatki po zmianie rozmiaru go poniżej tej wielkości.
Wielkość elementów sterujących w pierwszym wierszu jest nieznana podczas kompilacji, ale jest znana w czasie wykonywania. Jeśli jest to niezbędna część rozwiązania, mogę ustawić MaxHeight wiersza, ale teraz działa automatyczna wysokość.
Kontrolki w drugim rzędzie nie mają wyraźnego rozmiaru. Mogą one być zmieniane, ale staram się, aby nie stały się mniejsze niż pożądana minimalna wysokość.
nie działa. Wysokość pierwszego rzędu zachowuje się dokładnie tak, jak gdyby w drugim rzędzie nie było MinHeight. Zmienia rozmiar o połowę szybciej niż okno. Powoduje to obcięcie drugiego wiersza. –
@KendallFrey Poprzednie rozwiązanie nie działało we wszystkich przypadkach, więc dodałem rozwiązanie, które powinno spełnić Twoje potrzeby. –
Dzięki za MultiBinding. Nie wiedziałem o tym. Jedno pytanie: Rzeczywista siatka ma kilka innych wierszy o stałym i automatycznym rozmiarze, więc zakładam, że powinienem zrobić 'gridHeight - row2height - row3height', etc.? –