Search code examples
c#xamluwpblenduwp-xaml

Behaviors in UWP (Event trigger command error


SCENERIO:

I have a custom control where the control template has a grid. I want to add a behavior to the grid tapped event.

WHAT I HAVE DONE:

I have installed the Nuget package for managed UWP behaviors

Install-Package Microsoft.Xaml.Behaviors.Uwp.Managed

In the custom control's resource dictionary, I have the following xml namespaces referenced along with other necessary namespaces

xmlns:i="using:Microsoft.Xaml.Interactivity"
xmlns:core="using:Microsoft.Xaml.Interactions.Core"

Then in the custom control, in the grid block, I have the following

<i:Interaction.Behaviors>
   <core:EventTriggerBehavior EventName="Tapped">
       <core:InvokeCommandAction Command="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CustomCommand}"/>
    </core:EventTriggerBehavior>
 </i:Interaction.Behaviors>

ISSUES:

The core:InvokeCommandAction has the blue squiggly line with this error

The type EventTriggerBehavior does not support direct content

STEPS TO REPRODUCE:

Create a custom control. Nothing special,maybe just a grid. Add the EventTriggerBehavior as shown above to the grid. Use the created control on a page in your application

This right here is where I'm stuck at. I've done a lot of Google searches and just can't find a way out of this error. Any help and code correction will be appreciated


Solution

  • The core:InvokeCommandAction has the blue squiggly line with this error

    The type EventTriggerBehavior does not support direct content

    I made a basic demo and reproduced this problem. It is a XAML Designer issue. After building the project, this error is gone. So please make sure your codes are correct and go ahead build your project.