2010-07-20 96 views
1

在我的主窗口上,我有几个不同的按钮和字段已经在工作。它们基本上是一个隐藏用户计算的计算器。在Silverlight中,如何在按下按钮时显示新窗格?

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

我在Windows Phone 7模拟器上这样做,但我使用Silverlight。

回答

4

如果你想家酿造这将是相当微不足道的。我只会使用VisualStateManager。有2个状态为您的“它是如何工作”窗格。

  1. HowDoIWork_Visible
  2. HowDoIWork_Hidden

为了实现滑动效果,你需要有位置窗格关闭屏幕。所以我会添加一个TranslateTransform到窗格的RenderTransform属性。其“X”属性集最初将设置为您窗格的负宽度。欲了解更多信息请参见TranslateTransform

对于HowDoIWork_Visible国家规定的TranslateTransform的0 x属性和可见性为“可见”或不透明度为“1.0”。

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

当用户点击你只需要调用按钮:

VisualStateManager.GoToState("HowDoIWork_Visible"); 

要隐藏再次窗格:

VisualStateManager.GoToState("HowDoIWork_Hidden"); 

其他想法...

您可能还可以让Silverlight Toolkit的Accordion能够做你想做的事: 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

+0

有没有一种方法可以使用不同的页面? – samoz 2010-07-21 00:27:07

+0

你是什么意思的不同页面? 如果您创建“HowDoIWork”UI作为Silverlight“UserControl”而不是页面,则可以像添加其他任何控件一样将其添加到MainPage。只要确保在顶部包含您的名称空间。 下面是一个示例链接: http://www.a2zdotnet.com/View.aspx?Id=130 – Justin 2010-07-21 03:39:07

相关问题