XAML Behaviors is an easy-to-use means of adding common and reusable interactivity to your Windows UWP applications with minimal code. It is available for managed applications only. Use of XAML Behaviors is governed by the MIT License
Platform | Status |
---|---|
Managed |
- NuGet package for Managed
- Source Code
For an example of using Behaviors in an application, here is a snippet of XAML:
<Button xmlns:Interactivity="using:Microsoft.Xaml.Interactivity">
<Interactivity:Interaction.Behaviors>
<Interactivity:EventTriggerBehavior EventName="Click">
<Interactivity:ChangePropertyAction PropertyName="Background">
<Interactivity:ChangePropertyAction.Value>
<SolidColorBrush Color="Red"/>
</Interactivity:ChangePropertyAction.Value>
</Interactivity:ChangePropertyAction>
</Interactivity:EventTriggerBehavior>
</Interactivity:Interaction.Behaviors>
</Button>
The documentation explains how to install Visual Studio, add the XAML Behaviors NuGet package to your project, and get started using the API.
- Go to 'View' -> 'Team Explorer' -> 'Local Git Repositories' -> 'Clone'
- Add the XAML Behaviors repository URL (https://github.com/Microsoft/XamlBehaviors) and hit 'Clone'
- Ensure that nuget.exe is available in PATH
- If you're using Visual Studio
- Open the "BehaviorsSDKManaged.sln" solution in Visual Studio
- Change Build Configuration to Release
- Build solution with right click > Build, or by clicking F6
- If you're building from CLI (Visual Studio Developer Command prompt):
- Run
nuget restore src\BehaviorsSDKManaged\BehaviorsSDKManaged.sln
- Run
msbuild -t:build src\BehaviorsSDKManaged\BehaviorsSDKManaged.sln /p:Configuration=Release
- Run
- Run
msbuild /t:pack src\BehaviorsSDKManaged\Microsoft.Xaml.Interactivity.Design\Microsoft.Xaml.Interactivity.Design.csproj
- (Optional) Add
/p:TimestampPackage=true
to include the timestamp in the NuGet package version
- (Optional) Add
For WinUI:
- Run
msbuild /t:Pack src\BehaviorsSDKManaged\Microsoft.Xaml.Interactivity.WinUI\Microsoft.Xaml.Interactivity.WinUI.csproj /p:Configuration=Release
- (Optional) Add
/p:TimestampPackage=true
to include the timestamp in the NuGet package version
- (Optional) Add