2013-11-23 3 views
0

리본 메뉴가 포함 된 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> 

답변