none
【FlipView】如何使 FlipView 控件始终按比例呈现? RRS feed

  • 问题

  • FlipView 控件的大小默认是 Width=Auto、Height=Auto,但我希望它永远是按 16:9 的比例呈现的(里面的图片不一定是 16:9 的!)。

    或许你会说设置为 Width=160、Height=90 即可,但我的 FlipView 的大小是会根据窗口的大小作出对应的变化的;

    我也试过使用 值转换器,父级的 Width 是确定的,Height 则通过 值转换器 计算值(父级的 Width / 9 *16)),但有时不能成功。

    2015年10月21日 2:37

答案

  • 通过ViewBox实现:https://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.xaml.controls.viewbox

    你把FlipView放入ViewBox然后使用Uniform的Stretch.

    但是这样子我觉得很奇怪,你不如将你的<Image Stretch="Uniform" .../>放置在FlipView中,这样图片就始终可以保持原有比例,不管窗口如何变化,图片比例都不会被破坏。

    还有,你如果要通过父窗口大小来通过converter计算,你应该使用的是ActualWidth 和 ActualHeight 这两个属性。


    Bob Bao

    Do you still use the same Windows 8 LockScreen always? Download Chameleon Win8 App quickly, that changes your LockScreen constantly.
    你是否还在看着一成不变的Windows 8锁屏而烦恼,赶紧下载这个 百变锁屏 应用,让你的锁屏不断地变化起来。


    2015年10月28日 8:28