代码之家  ›  专栏  ›  技术社区  ›  foobarfuzzbizz

在Silverlight中,如何在按下按钮时显示新窗格?

  •  1
  • foobarfuzzbizz  · 技术社区  · 14 年前

    在主窗口中,我有几个不同的按钮和字段已经在工作。它们基本上是一个向用户隐藏计算的计算器。

    但是,我想添加一个按钮,上面写着“它是如何工作的?”当按下时从侧面滑入一个新的窗格。

    我在WindowsPhone7模拟器上执行此操作,但我正在使用Silverlight。

    1 回复  |  直到 14 年前
        1
  •  4
  •   Justin    14 年前

    如果你想在家里酿造,这将是相当微不足道的。我只会用 VisualStateManager . 在“它是如何工作”窗格中有两个状态。

    1. 如何工作可见
    2. 如何隐藏

    要实现滑动效果,需要将窗格从屏幕上移开。所以我将向窗格的renderTransform属性添加translateTransform。它的“x”属性集最初设置为窗格的负宽度。有关详细信息,请参阅 TranslateTransform :

    对于 如何工作可见 状态将translateTransform的x属性设置为0。以及“可见”的可见性或“1.0”的不透明度。

    现在创建 如何隐藏 说明以便再次隐藏窗格。将窗格的可见性设置为“折叠”,或将其不透明度设置为“0.0”。同时将translateTransform的x属性设置回宽度。

    当用户单击按钮时,您只需调用:

    VisualStateManager.GoToState("HowDoIWork_Visible");
    

    要再次隐藏窗格:

    VisualStateManager.GoToState("HowDoIWork_Hidden");
    

    其他想法…

    您还可以调整Silverlight工具包的手风琴以执行您想要的操作: http://silverlight.codeplex.com/wikipage?title=Silverlight%20Toolkit%20Control%20Overview%20Pg1&referringTitle=Home

    如果您没有陷入滑入效果,ChildWindow提供了一种打开对话框类型视图的简单方法。 http://www.wintellect.com/CS/blogs/jprosise/archive/2009/04/29/silverlight-3-s-new-child-windows.aspx