2016-03-08 34 views
0

我需要WPF混合嚮導的幫助。這更多的是出於知識的緣故,因爲我已經可以通過顯式更改xaml在樣式中實現數據觸發器,但是我想知道是否有通過Blend執行此操作的方法。使用Blend的界面將數據觸發器添加到樣式觸發器,而不是通過xaml代碼

讓我們從一些代碼開始吧!

<Image x:Name="image" HorizontalAlignment="Center" Height="299" Margin="24,27,24,0" VerticalAlignment="Top" Width="832" RenderTransformOrigin="0.5,0.5" Source="img/SpiderLogo.png" d:IsHidden="True" Grid.RowSpan="2"> 
     <Image.Style> 
      <Style> 
       <Style.Resources> 
        <Storyboard x:Key="LoadTitleScreen"> 
         <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Opacity)"> 
          <EasingDoubleKeyFrame KeyTime="0" Value="1"/> 
          <EasingDoubleKeyFrame KeyTime="0:0:0.6" Value="0"/> 
         </DoubleAnimationUsingKeyFrames> 
         <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)"> 
          <DiscreteObjectKeyFrame KeyTime="0" Value="{x:Static Visibility.Visible}"/> 
          <DiscreteObjectKeyFrame KeyTime="0:0:0.6" Value="{x:Static Visibility.Collapsed}"/> 
         </ObjectAnimationUsingKeyFrames> 
        </Storyboard> 
       </Style.Resources> 
       <Style.Triggers> 
        <DataTrigger Binding="{Binding IsLoginValid, Source={StaticResource viewModel}}" Value="true"> 
         <DataTrigger.EnterActions> 
          <BeginStoryboard Storyboard="{StaticResource LoadTitleScreen}"/> 
         </DataTrigger.EnterActions> 
        </DataTrigger> 
       </Style.Triggers> 
      </Style> 
     </Image.Style> 
    </Image> 

一切都很好,在這裏工作!

1)右鍵單擊「對象和時間線」

2)編輯風格

3)創建樣式資源

形象:現在建立另一個圖像和編輯它的樣式資源之後

我可以創建故事板和整個九個,但不能通過Blend的界面添加數據觸發器。我去資產菜單拖動一個ChangePropertyAction到風格,但整個資產菜單是灰色/非功能。

<Image x:Name="titleBackgroundImage" HorizontalAlignment="Center" Height="610" VerticalAlignment="Center" Width="899" Source="img/RPVBackground.jpg" Stretch="Fill" Margin="-9,-10,-10,-50" Grid.RowSpan="2" Visibility="Collapsed" Style="{DynamicResource TitleScreenBackgroundImage}"> 
     <Image.Resources> 
      <Style x:Key="TitleScreenBackgroundImage" TargetType="{x:Type Image}"> 
       <Style.Resources> 
        <Storyboard x:Key="LoadTitleScreenBackground"> 
         <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="{x:Null}"> 
          <EasingDoubleKeyFrame KeyTime="0:0:0.6" Value="0"/> 
          <EasingDoubleKeyFrame KeyTime="0:0:1.1" Value="1"/> 
         </DoubleAnimationUsingKeyFrames> 
         <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="{x:Null}"> 
          <DiscreteObjectKeyFrame KeyTime="0:0:0.6" Value="{x:Static Visibility.Visible}"/> 
          <DiscreteObjectKeyFrame KeyTime="0:0:1.1" Value="{x:Static Visibility.Collapsed}"/> 
         </ObjectAnimationUsingKeyFrames> 
        </Storyboard> 
       </Style.Resources> 
      </Style> 
     </Image.Resources> 
    </Image> 

這是我堅持了,在款式的資源,但不能創建一個很好的故事板添加觸發器來調用它=(

如果你知道如何!非常感謝請幫忙!

回答

0

如果它只是觸發你想和那個窗口不會立即在默認情況下,你可以打開放;

按Ctrl + ALT +R

...或從頂層菜單View -> Triggers Window中選擇並在那裏管理您的觸發器。

至於爲什麼您的資產標籤變灰,那可能是幾個不同的原因。需要更多地瞭解這一點。首先猜測會是你只是缺少SDK或什麼?希望這可以幫助。

+0

嘿克里斯,謝謝你的迴應。我可以在編輯樣式時打開觸發器窗口,但單擊「+屬性」添加屬性觸發器什麼也不做。我檢查SDK,我目前正在使用2013年,這可能是一個問題。 – Swanny