我有一個包含功能區菜單的WPF應用程序。這很簡單,因爲我想了解更多關於WPF的知識。所以我有兩個功能區組。每個組都有一個按鈕。當某人將鼠標懸停在網格向下滑動的按鈕上時,我想要發生的事情。即從功能區菜單的下面開始,一直走到窗口的底部。WPF滑動網格
以下是我的代碼。這是一種工作。當它懸停在按鈕「buttSimSec」上時,網格「paneSimFirst」確實滑動。然而它從我的應用程序窗口的中心開始。當鼠標懸停在其上時,另一個按鈕不會執行任何操作。
另外我想知道如何不必重複我的功能區中的每個按鈕的EventTrigger代碼?
無論你想<DockPanel Name="dockMain">
<Ribbon DockPanel.Dock="Top" Title="Simulator" x:Name="mainRibbon">
<RibbonTab x:Name="Simulator" Header="Simulator">
<RibbonGroup x:Name="grpSecurities" Header="Securities">
<RibbonButton x:Name="buttSimSec" Label="Select Securities">
<RibbonButton.Triggers>
<EventTrigger RoutedEvent="MouseEnter">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
Storyboard.TargetName="paneSimFirst"
Storyboard.TargetProperty="(Grid.Height)"
From="0"
To="50"
Duration="0:0:2"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</RibbonButton.Triggers>
</RibbonButton>
</RibbonGroup>
<RibbonGroup x:Name="grpModels" Header="Models">
<RibbonButton x:Name="buttModels" Label="View Models">
<RibbonButton.Triggers>
<EventTrigger RoutedEvent="MouseEnter">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
Storyboard.TargetName="paneSimSecond"
Storyboard.TargetProperty="(Grid.Height)"
From="0"
To="50"
Duration="0:0:2"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</RibbonButton.Triggers>
</RibbonButton>
</RibbonGroup>
</RibbonTab>
</Ribbon>
<Grid Name="ParentGrid" Grid.IsSharedSizeScope="True" Visibility="Visible">
<Grid x:Name="paneSimFirst" Visibility="Visible" Background="Purple">
</Grid>
<Grid x:Name="paneSimSecond" Visibility="Collapsed" Background="YellowGreen">
</Grid>
</Grid>
</DockPanel>