Windows runtime WinRT ListView和ExpanderView问题
之后,我认为Windows Phone toolkit ExpanderView成功移植到WinRT,我注意到它并没有100%正常工作 以下是我想做的:- 我有一个ListView,其中ItemsSource是数据绑定的,在这个ListView的ItemTemplate中有一个ExpanderView,我移植了它???!!!其思想是,我希望在点击ListView项时展开expander视图 这种情况正在发生,但当ExpanderView展开时,它与下一个ListView项重叠,即ListViewItem高度没有改变。为什么我真的不知道。为了解决这个问题,我一直在尝试各种可能的想法,但徒劳无功:( 有谁能帮助我,指引我正确的方向吗 下面是一个简单示例的链接(VS project,包含所有必要的代码)以演示该问题Windows runtime WinRT ListView和ExpanderView问题,windows-runtime,winrt-xaml,win-universal-app,Windows Runtime,Winrt Xaml,Win Universal App,之后,我认为Windows Phone toolkit ExpanderView成功移植到WinRT,我注意到它并没有100%正常工作 以下是我想做的:- 我有一个ListView,其中ItemsSource是数据绑定的,在这个ListView的ItemTemplate中有一个ExpanderView,我移植了它???!!!其思想是,我希望在点击ListView项时展开expander视图 这种情况正在发生,但当ExpanderView展开时,它与下一个ListView项重叠,即ListView
提前感谢请确保使用
堆叠面板
作为面板
<ListView>
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel />
</ItemsPanelTemplate>
</ListView.ItemsPanel>
</ListView>
祝你好运!在很多地方,你都有正在更改布局的动画。这些动画的UI线程非常多,因此需要将属性
EnableDependentAnimations
设置为True
。你可以了解更多信息。你可能需要进入样式并手动更改VisualStates进行此更改。其中一个示例是:
在ExpanderResource.xaml中:
<VisualStateGroup x:Name="ExpansionStates">
<VisualStateGroup.Transitions>
<VisualTransition From="Collapsed"
GeneratedDuration="0:0:0.15" To="Expanded">
<Storyboard>
<DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(FrameworkElement.Height)" Storyboard.TargetName="ItemsCanvas" EnableDependentAnimation="True">
<EasingDoubleKeyFrame EasingFunction="{StaticResource QuadraticEaseOut}" KeyTime="0:0:0.00" Value="0" />
<EasingDoubleKeyFrame x:Name="CollapsedToExpandedKeyFrame" EasingFunction="{StaticResource QuadraticEaseOut}" KeyTime="0:0:0.15" Value="1" />
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</VisualTransition>
</VisualStateGroup.Transitions>
</VisualStateGroup>
请注意,使用关键帧的双重动画设置目标(FrameworkElement.Height)
需要启用dependentanimations=“True”
,因为这会影响布局
这不是该文件中需要修复的唯一位置。此外,我认为它不会解决所有布局问题。但它会获得扩展布局的属性。很抱歉,这没有帮助,您可以在我的示例中看到,我有此代码,但它不起作用:(哦,我很高兴听到这个消息,是项目不起作用还是ExpanderView?项目一设置得很快,所以可能不起作用,因为我没有像我所希望的那样对它进行测试。无论如何,如果可以的话,我会重新发送ExpanderView。\u我在你的演示中注意到你的ExpanderView
项目模板有一个基本元素ListViewItem
的ent。这有什么原因吗?你没有试过吗?@Nate我认为这是一个输入错误。谢谢,againI,我不认为是。我检查了WPToolkit代码,结果是一样的。@Ajitsuny问“我也在尝试同样的代码,并且面临多个错误。这占用了更多的内存。在ExpanderView中加载了大约200多条记录后,应用程序正在崩溃。您能否将您的代码共享给gmail com上的ajit.net2,以便我可以查看并确定问题所在。“@DreamNet你能提供最终的解决方案吗?你问题中的链接已经不起作用了Anks dude,这让我很开心。即使动画有点不和谐,这个属性也完成了工作。Leason学会了。