2010-07-20 103 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

相關問題