c# – Windows 8 XAML对象和Snapped View

c# – Windows 8 XAML对象和Snapped View,第1张

概述所以我制作了一个应用程序并设置了布局,使其在纵向模式下显示正常.对于捕捉的视图,我创建了一个ListView,它包含相同对象的不同实例.此ListView最初是折叠的,然后当它更改为捕捉时,列表视图变为可见,并且纵向模式对象将折叠. 这很好用,但由于它们是两组不同的对象,因此会影响用户体验.如果他们以纵向模式将文本输入到框中,然后切换到捕捉视图,则所有文本都将消失(因为它们将它放在现在折叠的文本框 所以我制作了一个应用程序并设置了布局,使其在纵向模式下显示正常.对于捕捉的视图,我创建了一个ListVIEw,它包含相同对象的不同实例.此ListVIEw最初是折叠的,然后当它更改为捕捉时,列表视图变为可见,并且纵向模式对象将折叠.

这很好用,但由于它们是两组不同的对象,因此会影响用户体验.如果他们以纵向模式将文本输入到框中,然后切换到捕捉视图,则所有文本都将消失(因为它们将它放在现在折叠的文本框中).

问题是是否可以只改变元素的位置/大小,使它们只是在不同的地方是相同的对象,这取决于我们是否处于捕捉模式?

希望这很清楚.谢谢.

解决方法 是的,实际上,该功能是LayoutAwarePage类的内置功能,这是您在项目中添加基本页面(与空白页面)时获得的 Page类型.如果您从GrID或Split App模板开始,则提供的页面同样会扩展LayoutAwarePage.

这些页面有一些样板XAML,它利用VisualStateManager并定义各种应用程序布局的状态.您可以做的是为完整横向模式设计布局,然后使用Device window记录对“捕捉”,“填充”和“纵向”的布局(放置,颜色等)的更改.

例如,这是横向模式下的简单UI:

然后通过将Visual状态切换为Snapped并启用Enable State Recording,我对布局进行了更改:

在运行时,应用程序在两种状态中的每一种状态下都如下所示.不需要代码 – 当应用程序的方向发生变化时,VisualAates之间的LayoutAwarePage切换都会处理它们.

总结

以上是内存溢出为你收集整理的c# – Windows 8 XAML对象和Snapped View全部内容,希望文章能够帮你解决c# – Windows 8 XAML对象和Snapped View所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1217820.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-05
下一篇2022-06-05

发表评论

登录后才能评论

评论列表(0条)

    保存