<GroupStyle.Panel> <ItemsPanelTemplate> <VariableSizeDWrapGrID x:name="variableSizeDWrapGrID" OrIEntation="Vertical" Background="Blue" WIDth="660" ItemHeight="120" ItemWIDth="220" margin="0,80,0"> <visualstatemanager.VisualStateGroups> <VisualStateGroup> <VisualState x:name="FullScreenPortrait"> <Storyboard> <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(FrameworkElement.OrIEntation)"> <discreteObjectKeyFrame KeyTime="0" Value="Horizontal" /> </ObjectAnimationUsingKeyFrames> </Storyboard> </VisualState> </VisualStateGroup> </visualstatemanager.VisualStateGroups> </VariableSizeDWrapGrID> </ItemsPanelTemplate></GroupStyle.Panel>
我正在为windows 8开发windows Metro应用程序.
解决方法 我相信这是LayoutAwarePage的用途.如果您将LayoutAwarePage作为基类,并且希望控件在旋转平板电脑时切换VisualStates,则将控件的Loaded事件挂钩到LayoutAwarePage上的StartLayoutUpdates方法.如您所见,每当状态发生变化时,它将运行“InvalIDateVisualState”,它将遍历接收LayoutUpdates的所有控件,并手动将其visualstatemanager设置为适当的状态.
所以在你所拥有的代码中,你需要为景观设置一个VisualState – 我相信它将被称为FullScreenLandscape但我不记得了 – 然后将StartLayoutUpdates添加到VariableSizeDWrapGrID控件的Loaded事件中.这假设您的页面是LayoutAwarePage.老实说,如果你想这样做,你应该这样做.由于这个原因,他们已经包含了所有样板代码.
希望有所帮助.
总结以上是内存溢出为你收集整理的c# – 如何在嵌套元素上设置可视状态?全部内容,希望文章能够帮你解决c# – 如何在嵌套元素上设置可视状态?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)