我在WPF中定義了一個窗口,在這個窗口中放置了一個「堆棧面板」,在此面板中放置了一個「選項卡控件」和一些「按鈕控件」。在WPF中設計控制面板的最佳做法
在執行程序時,我希望當我不得不使用鼠標調整窗口大小時,堆棧面板及其內部的所有控件也可以自動調整大小並與窗口成比例。
我怎樣才能得到這個?
謝謝!
我在WPF中定義了一個窗口,在這個窗口中放置了一個「堆棧面板」,在此面板中放置了一個「選項卡控件」和一些「按鈕控件」。在WPF中設計控制面板的最佳做法
在執行程序時,我希望當我不得不使用鼠標調整窗口大小時,堆棧面板及其內部的所有控件也可以自動調整大小並與窗口成比例。
我怎樣才能得到這個?
謝謝!
a StackPanel
只使用其子控制所需的空間;它不會而不是調整到窗口的可用空間。
如果您想要這種行爲,請使用不同類型的面板:如果您只希望調整標籤控件的大小,請使用DockPanel
並使該選項卡控制爲DockPanel的最後一個子項。一個DockPanel伸展到父節點的可用空間,最後一個孩子獲得之前孩子沒有使用的所有空間。
<DockPanel>
<Button DockPanel.Dock="Bottom" />
<Button DockPanel.Dock="Bottom" />
<TabControl>
...
</TabControl>
</DockPanel>
如果您需要更復雜的間距的行爲(例如,你想要的按鈕按比例佔用更多的空間爲好),看看在Grid
控制。
如果你想要的一切,只是規模上下均勻,所以你可能最終得到巨大的或微小的控制和字體,包住整個窗口的內容(目前StackPanel
)在Viewbox
控制。
Jay,Visual Studio不允許我在ViewBox中包裝StackPanel。 – vizcayno 2010-04-01 14:03:03
@vizcaynot以什麼方式不允許你? ' ... '是完全有效的XAML - 我只是在VS2008 SP1中試過。確保你沒有試圖包裝''。 –
Jay
2010-04-01 16:45:59