回答
使用Grid
作爲UI中的頂級元素 - 它將伸展以填充其容器。然後將Canvas
與HorizontalAlignment="Stretch"
放在Grid
之內,它會按照您的要求行事。
<Grid xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Canvas Background="Blue"/>
</Grid>
這對我有用。關鍵是您的頂級UI元素。雖然Grid
默認填充所有可用空間,但Canvas
只佔用與其內容需求相同的空間。
你可以使用一個固定面板得到它填補了可用寬度。控制面板控件列表中的最後一項會自動拉伸以填充剩餘空間。
<DockPanel>
<Canvas />
</DockPanel>
除非手動設置高度和/或寬度,否則畫布應該自動執行此操作。你想把畫布放在什麼樣的控制上?你能發佈你的代碼嗎?
我已經發布了我的代碼。畫布是整個應用程序的主要父元素。 – resopollution 2009-06-03 19:21:52
我嘗試刪除高度和寬度屬性,但一切都消失了。 – resopollution 2009-06-03 19:22:54
我猜你已經試過
canvas.HorizontalAlignment = HorizontalAlignment.Stretch
如果這不起作用,你可以做的又是什麼綁定畫布的Width
和Height
屬性含有的ActualWidth
和ActualHeight
性質窗口。
問題是您指定的是Height
和Width
。如果沒有這些屬性,控件可能會在設計器中消失,但在將畫布插入另一個控件時,它應該適當調整大小。
如果我正確記得,WPF的下一個版本將具有「DesignWidth」和「DesignHeight」屬性,允許您在設計器中以給定大小顯示控件,而不會影響插入其他控件時的測量。
- 1. WPF:水平拉伸日曆?
- 2. 在RibbonGroup內水平拉伸WPF格柵
- 3. 拉伸水平div(中間div拉伸)
- 4. Ckeditor 4水平拉伸
- 5. 拉伸水平的ListBox
- 6. 拉伸/縮小畫布
- 7. 拉伸畫布到網格
- 8. 砌體畫廊拉伸所有東西水平
- 9. 水平列表框項目拉伸
- 10. android:水平拉伸表面視圖
- 11. Python/Tkinter:水平拉伸圖像?
- 12. 拉伸填充行水平android xml
- 13. 如何使ContentControl水平拉伸
- 14. css拉伸水平浮動div
- 15. 水平拉伸 - 組標題ListView
- 16. 水平定向-ListBoxItems不會拉伸
- 17. 使用CSS水平拉伸文本
- 18. CSS - 拉伸和均勻分佈的水平菜單
- 19. iOS的自動佈局如何拉伸2按鈕水平
- 20. wpf在調整畫布父母大小時拉伸一條線
- 21. 如何使用dockpanel拉伸畫布?
- 22. HTML5上的矩形畫布被拉伸
- 23. android:繪製到畫布沒有拉伸
- 24. 拉伸物品填充畫布
- 25. HTML中心一個div內畫布而不拉伸的畫布
- 26. 佈局拉伸
- 27. WPF對齊拉伸
- 28. 拉伸的WPF StackPanel
- 29. 如何垂直平鋪UIImage,而只在iOS上水平拉伸?
- 30. WPF水平DataGrid
有沒有快速的方法來做
我嘗試刪除高度和寬度屬性,但一切都消失了。 – resopollution 2009-06-03 19:22:45