2013-05-28 71 views
0

我對WPF的動畫/圖形方面非常陌生,並且很掙扎。WPF MVVM - 信息欄滑動動畫

我有一個用戶控件,它由4個文本框和一個按鈕組成。

我期待有一個鎖閂滑塊從控制和顯示的DataTemplates的自上而下

我沒有任何代碼或例子來補充,我已經寫到目前爲止真的爲我的攻角變化很大。我的理解是,我想要一個Storyboard進行展開和摺疊,但不知道如何從MVVM的角度對此進行動畫處理。

最好是將DockPanel或Stackpanel與內容控件配合使用嗎?或者完全不同的東西?

任何相關的動畫或mvvm /動畫教程將不勝感激。

編輯 - 添加了「粗糙」的概念圖像。

enter image description here

謝謝。 Steve

+0

如果您沒有發佈任何XAML,至少張貼您需要的截圖,以便我們可以瞭解它是什麼樣的。如果不在Stackoverflow中,請嘗試'imgur.com',然後鏈接問題中的圖像。 –

+0

[Here](http://stackoverflow.com/q/10701898/1456174)是關於動畫從隱藏到摺疊的問題,反之亦然 –

回答

0

我在視圖模型中創建了2個屬性。 ShowPane - 布爾值 PaneInfo - 綁定到內容控件的類,用於顯示顯示相關信息的DataTable。

<Control> 
    <Control.Template> 
      <ControlTemplate> 
       <ControlTemplate.Triggers> 
         <DataTrigger Binding="{Binding ShowPane}" Value="true"> 
          <DataTrigger.EnterActions> 
           <BeginStoryboard> 
            <Storyboard> 
             <DoubleAnimation Storyboard.TargetName="InfoPanel" Storyboard.TargetProperty="(Grid.Height)" From="0" To="50" Duration="0:0:.5" AutoReverse="False"/> 
            </Storyboard> 
           </BeginStoryboard> 
          </DataTrigger.EnterActions> 
          <DataTrigger.ExitActions> 
           <BeginStoryboard> 
            <Storyboard> 
             <DoubleAnimation Storyboard.TargetName="InfoPanel" Storyboard.TargetProperty="(Grid.Height)" From="50" To="0" Duration="0:0:.5" AutoReverse="False"/> 
            </Storyboard> 
           </BeginStoryboard> 
          </DataTrigger.ExitActions> 
         </DataTrigger> 
        </ControlTemplate.Triggers> 
        <ContentControl DataContext="{Binding PaneInfo}" Name="InfoPanel" /> 
       </ControlTemplate> 
      </Control.Template> 
     </Control>