【发布时间】:2012-03-29 16:45:04
【问题描述】:
我正在使用 WindowsPhone Toolkit 的 ExpanderView,在第一次加载时,我展开的 Expander 总是看起来像第二张图片。 看起来,它总是在所有项目的相同高度。
如果我转到另一个页面并返回,一切都会好起来的,并且布局看起来很正确 - 除了扩展器的停止线(图 1)。
this.UpdatedLayout();(当前页面) 或 ExpanderView.UpdateLayout();解决了任何事情。 未显示的项目已完全加载到该列表中。
<ItemsControl ItemsSource="{Binding EpisodeList}" Margin="20,0,0,0" Grid.Row="1" Grid.ColumnSpan="2">
<ItemsControl.ItemTemplate>
<DataTemplate>
<StackPanel>
<toolkit:ExpanderView ItemsSource="{Binding Value}" >
<toolkit:ExpanderView.Header>
<TextBlock Margin="0,0,10,0">
<Run Text="Season "/>
<Run Text="{Binding Key}" />
</TextBlock>
</toolkit:ExpanderView.Header>
<toolkit:ExpanderView.ItemTemplate>
<DataTemplate>
<Border BorderBrush="White" BorderThickness="1" Margin="5">
<Grid MouseLeftButtonUp="Grid_MouseLeftButtonUp">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Image Height="40" Source="{Binding ScreenCap}" Margin="5,0,0,0"/>
<TextBlock x:Name="t" Margin="10" Text="{Binding Title}" TextWrapping="Wrap" Grid.Column="1" />
</Grid>
</Border>
</DataTemplate>
</toolkit:ExpanderView.ItemTemplate>
</toolkit:ExpanderView>
</StackPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
EpisodeList 是 Dictionary(int,ObservableCollection(myClass)) 的类型并实现了 INotifyPropertyChanged
如果有人有任何计划这里出了什么问题,我真的很感谢你的帮助,我只是没有在谷歌的那个列表上找到任何错误报告,也没有发现类似的错误。
(在设备和模拟器上调试)
【问题讨论】:
-
有一次我遇到了与
ExpanderView类似的问题。它显示了 2048px 的内容Height。也许是类似的东西......
标签: windows-phone-7 silverlight-toolkit expander