2016-04-18 3 views
0

Я мигрирующие мое windows8.1 приложение UWP, и я обнаружил, что многие из моих поведений перестал работать один из них является ShowFlyoutBehavior и код выглядит следующим образомПоведение для ShowFlyoutBehavior не работает в UWP?

     <interactivity:Interaction.Behaviors> 
          <core:EventTriggerBehavior EventName="Tapped"> 
           <behaviors:ShowFlyoutBehavior /> 
          </core:EventTriggerBehavior> 
         </interactivity:Interaction.Behaviors> 

сообщение об ошибке, как это не удается добавить экземпляр типа «XX.App.Behaviors.ShowFlyoutBehavior» в коллекцию типа «Microsoft.Xaml.Interactivity.ActionCollection». Есть идеи? Он отлично работает в Windows 8.1. Я уже установлен пакет Microsoft.Xaml.Behaviors.Uwp.Managed NuGet

+0

Оказалось, что IAction был прокомментирован в коде, который вызывает ошибку. – litaoshen

ответ

1

Допустим, у вас есть простой XAML:

<Image Source="/Assets/Logo.scale-100.png" 
     Height="100" Width="100"> 
    <FlyoutBase.AttachedFlyout> 
     <Flyout> 
      <StackPanel> 
       <TextBlock Text="Awesome Flyout!" /> 
      </StackPanel> 
     </Flyout> 
    </FlyoutBase.AttachedFlyout> 
</Image> 

Создать пользовательское поведение:

public class OpenFlyoutAction: DependencyObject, IAction 
{ 
    public object Execute(object sender, object parameter) 
    { 
     FlyoutBase.ShowAttachedFlyout((FrameworkElement)sender); 

     return null; 
    } 
} 

Окончательный XAML:

<Image Source="/Assets/Logo.scale-100.png" 
     Height="100" Width="100"> 
    <FlyoutBase.AttachedFlyout> 
     <Flyout> 
      <StackPanel> 
       <TextBlock Text="Awesome Flyout!" /> 
      </StackPanel> 
     </Flyout> 
    </FlyoutBase.AttachedFlyout> 
    <i:Interaction.Behaviors> 
     <core:EventTriggerBehavior EventName="Tapped"> 
      <local:OpenFlyoutAction /> 
     </core:EventTriggerBehavior> 
    </i:Interaction.Behaviors> 
</Image> 

Я предлагаю вам прочитать здесь https://marcominerva.wordpress.com/2013/12/17/using-a-behavior-to-open-attached-flyouts-in-winows-81-store-apps/