To, co próbuję zrobić, to pokazać okno, które nie ma jawnie wysokości / szerokości (obie wartości zostały pominięte lub ustawione na Auto
). Zgadywałem, że okno dowie się o swoim rozmiarze poprzez automatyczne obliczenie wszystkich zawartych rozmiarów kontrolek użytkownika, ale tak naprawdę to nie działa!
Zamiast tego mam duże okno z Actualwidth
i Actualheight
wartości ustawione na 512 (?!?!)
Deklaracja okna:
<Window x:Class="Window3"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window3"
Height="Auto">
<StackPanel>
<Label>Window</Label>
</StackPanel>
</Window>
Pokazywanie tego okna jako okna dialogowego poprzez:
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles Button2.Click
Dim dlg As New Window3
dlg.ShowDialog()
End Sub
Czy jest na to rozwiązanie? Nie chcę jawnie ustawiać rozmiaru mojego okna, ponieważ wiele kontrolek w formularzu zostanie zwiniętych w oparciu o parametry konstruktora, a próba znalezienia rzeczywistego rozmiaru formularza byłaby trudna (i brzydka).
.WindowStartupLocation
ustawionym na"CenterScreen"