wpf範例 - wpf設計




窗口高度=“自動”不按預期工作 (2)

將窗口的屬性SizeToContent to "WidthAndHeight" 。 這應該有所幫助。

我試圖做的是顯示一個窗口,它沒有明確的高度/寬度,(這兩個值都省略或設置為Auto )。 我猜測窗口會通過自動計算所有包含的usercontrols大小來找出它的大小,但這實際上並不工作!

相反,我得到一個ActualwidthActualheight值都設置為512的大窗口(?!?!)

窗口聲明:

<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>

通過以下方式顯示此窗口為對話框:

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

有沒有解決方案? 我不想明確地設置我的窗口的大小,因為表單中的很多控件都會根據構造函數參數進行折疊,而試圖找到表單的實際大小將會非常棘手(並且很難看)。


老問題,但更新的答案:

正如@ Muad'Dib在他的回答中所建議的那樣:

你應該設置SizeToContent="WidthAndHeight"

如果窗口內容的大小增加超過屏幕大小,窗口可能會從屏幕溢出。 所以,你必須考慮:

MaxWidth="600"
MaxHeight="400"




wpf