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

时间:2010-07-20 23:00:22

标签: windows silverlight windows-phone-7

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

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

我在Windows Phone 7模拟器上执行此操作,但我使用的是Silverlight。

1 个答案:

答案 0 :(得分:4)

如果你想回家酿造,这将是相当微不足道的。我只想使用VisualStateManager。为“你的工作原理”窗格提供2种状态。

  1. HowDoIWork_Visible
  2. HowDoIWork_Hidden
  3. 要完成滑动效果,您需要将窗格的位置放在屏幕上。所以我会将TranslateTransform添加到窗格的RenderTransform属性中。其“X”属性集最初将设置为窗格的负宽度。有关详细信息,请参阅TranslateTransform

    对于 HowDoIWork_Visible 状态,将TranslateTransform的X属性设置为0,将可见性设置为“Visible”或将Opacity设置为“1.0”。

    现在创建 HowDoIWork_Hidden 状态,以便您可以再次隐藏该窗格。将窗格的“可见性”设置为“折叠”或将其不透明度设置为“0.0”。同时将TranslateTransform的X属性设置回宽度。

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

    VisualStateManager.GoToState("HowDoIWork_Visible");
    

    再次隐藏窗格:

    VisualStateManager.GoToState("HowDoIWork_Hidden");
    

    其他想法......

    您也可以使Silverlight Toolkit的手风琴适应您想要的效果: 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