2011-01-27 64 views
1

在Windows窗體世界中,您可以使用面板並將它的浮動屬性填充到嵌套面板等,當用戶調整窗口面板和嵌套面板也會自動調整大小。我想用Silverlight實現類似的功能,這裏是我目前的結構。Silverlight 4/WPF - 嵌套ScrollViewer面板,可縮放可用屏幕尺寸

Main 
    ScrollViewer // for body 
    UserControl 
     Grid 
     control 
     Scrollviewer // this is where my problem is 
     Control 

的問題是,我可以爲嵌套滾動觀衆看起來不錯1024分辨率設置大小,但我也想佔具有較大分辨率的用戶。如果我將其保留爲自動,則內容僅延伸到可見的底線之下並按照頂級ScrollViewer展開。

如果我能實現類似於Windows窗體如何通過對接來處理這種事情,我認爲我的問題將得到解決。我必須有一個嵌套面板的ScrollViewer,我希望它填滿左側的所有visible space。我如何通過SL4或WPF實現這一目標?

[編輯] 下面是我之後的例子。 enter image description here

+0

如果您將發佈Xaml,建議您如何修改它將會更容易。 – baalazamon 2011-01-27 20:18:31

回答

1

頂級ScrollViewer允許其內容儘可能大,並添加滾動條(如果這意味着它們不適合窗口)。它的孩子不再知道或不在乎窗戶的高度;他們只知道他們有足夠的空間。

那麼你想從嵌套的ScrollViewer中獲得什麼呢?它擁有它需要的所有空間,所以它會顯示所有的內容 - 沒有什麼可以將它限制在窗口的高度。實際上,您添加了頂級ScrollViewer,它專門告訴它「不要將限制爲窗口的高度」。

如果您希望將內部ScrollViewer限制爲窗口高度,則取出頂級ScrollViewer。

+0

請看我上次編輯的內容,我添加了我想要完成的截圖。不幸的是我無法擺脫外面的scrollviewer。部門。在插圖中看到的面板在運行時會動態加載到該中心區域,就像許多其他基於菜單選擇的控件一樣。 – James 2011-01-28 00:49:59