none
如何做点击图片,全屏观看? RRS feed

  • 问题

  • 微软的SDK里面有一个flipview的例子,如何才能点击里面的图片,进入全屏浏览,或者放大的功能呢?
    2012年8月8日 7:22

答案

  • 你新建一个Page , 里面就放置一个Back 按钮和Image组件,然后在FlipView中处理SelectionChanged事件去导航到你的页面并且设置Image控件Source值来显示图片。

    或者你可以创建一个Popup,在SelectionChanged事件中显示他去展现一个图片。此Popup大小可以设置到屏幕大小,即可以显示为全屏。


    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us

    2012年8月9日 3:19
    版主
  • 没看懂,什么是  “传到页面里进入控件的Binding”

    你如果{Banding XXX},没有指定Source, 那么默认是绑定DataContext的XXX属性,你把对象赋值到 ImagesPopup.DataContext 上,里面的所有绑定不都有数据源了,然后你再通过具体的XXX属性来给各个绑定确定内容。


    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us

    2012年8月14日 8:20
    版主

全部回复

  • 你新建一个Page , 里面就放置一个Back 按钮和Image组件,然后在FlipView中处理SelectionChanged事件去导航到你的页面并且设置Image控件Source值来显示图片。

    或者你可以创建一个Popup,在SelectionChanged事件中显示他去展现一个图片。此Popup大小可以设置到屏幕大小,即可以显示为全屏。


    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us

    2012年8月9日 3:19
    版主
  • 如果使用Popup的话,要怎样把值传过去?
    2012年8月14日 7:56
  • Popup里面肯定有个Image控件对吧 ,直接将你的 BitmapImage对象赋值到他的Source属性就可以了。

    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us

    2012年8月14日 8:06
    版主
  • 我的写法是这样子的:
     Popup popup = new Popup();
     if (!popup.IsOpen)
                {
                    popup.Child = new ImagesPopup();
                    popup.IsOpen = true;
                }

    ImagesPopup 这个页面是绑定一个FlipView控件,我希望弹出这个页面时,可以把对象传到页面里进入控件的Binding
    2012年8月14日 8:17
  • 没看懂,什么是  “传到页面里进入控件的Binding”

    你如果{Banding XXX},没有指定Source, 那么默认是绑定DataContext的XXX属性,你把对象赋值到 ImagesPopup.DataContext 上,里面的所有绑定不都有数据源了,然后你再通过具体的XXX属性来给各个绑定确定内容。


    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us

    2012年8月14日 8:20
    版主
  • 我是以为,当面ImagesPopup弹出来的时候,会触发ImagesPopup里面的LoadState事件来获取参数的,照你的方法,我试试看吧
    2012年8月14日 8:38
  •  Popup popup = new Popup();

     popup.Child = new ImagesPopup();
    popup.DataContext = Plus
    popup.IsOpen = true;


    貌似不行, Plus是一个列表数据,
    在弹出页ImagesPopup里面的有一个FlipView(ImagesPopup是基本页FlipView我设置了ItemsSource="{Binding Plus}",还是没有显示数据。ImagesPopup的布局Grid 是不是要加上 DataContext?  


    2012年8月14日 10:14
  • 当前DataContext已经是 Plus了,所以你没有必要再绑定到他里面的 Plus属性了,你只要本定期本身作为ItemsSource即可: ItemsSource="{Binding Path=.}"  这个请参考 http://msdn.microsoft.com/zh-cn/library/ms752347.aspx#specifying_the_binding_source


    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us


    2012年8月14日 10:34
    版主
  • popup.DataContext = Plus;    ImagesPopup的FlipView,ItemsSource=“{Binding}” 就可以了,DataContext都不用设置。

    谢谢Bob,已经成功绑定数据啦

    2012年8月15日 4:03