0
對不起,要求提出一個完整的n00b問題,但我試過了我能想到的一切,沒有任何工作。Silverlight 3:尺寸模型/ 100%尺寸
谷歌一直沒有太大的用處,所有的結果都是從古代版本的Silverlight :(
問題:
我有一個Silverlight的用戶控件的佈局根是一個網格。網格被限定爲使得:
<Grid.ColumnDefinitions>
<ColumnDefinition Width="30" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="30" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<MyScrollButton Grid.Column="0" Name="LeftScroller" Width="30" Height="Auto" />
<ListBox x:Name="ScrollBox" Grid.Column="1" RenderTransformOrigin="0.5, 0.5"
ScrollViewer.HorizontalScrollBarVisibility="Hidden"
ItemContainerStyle="{Binding Source={StaticResource ListBoxItemStyle}}"
ItemsSource="{Binding Source={StaticResource ControlState:myItemSource}}"
Style="{Binding Source={StaticResource ListBoxStyle}}"
HorizontalAlignment="Center"
BorderThickness="0" Width="Auto" Height="796">
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
</ListBox>
<MyScrollButton Grid.Column="2" Width="30" Height="Auto"/>
當我運行這個時,LayoutRoot正確調整大小。它填充瀏覽器窗口。
但是,子控件沒有(重新)大小。 MyScrollButton s和ListBox不獲取任何高度,因此它們不可見。
我想要這些控件繼承父對象的高度。它們應該是頁面高度的100%。
我已經試過:
- 輸入百分比的高度。無效。
- 在Blend 3的幫助下將高度綁定到LayoutRoot的高度。沒有區別。
- 輸入*作爲高度。無效。
爲了實現Flex中相同的功能的「記錄」是(被,我這樣做是因爲這兩個科技股的比較)真的很容易..
謝謝,這工作:)或者準確地說,將Height設置爲Auto並將VerticalAlign設置爲Stretch工作。 – 2009-07-28 13:40:55