Lester's WPF\SL Blog

Simple, Easy & Beautiful

XAML 2009 Features: XAML Event handling

XAML 2009 Features: XAML Event handling

Rate This
  • Comments 0

[This is part of a series on New WPF\XAML Features]  

In previous releases, when loose XAML had events in it and was loaded it would crash. In V4, there are 2 options to avoid this crash.

à On loading events are searched on the root object of the XAML file. Suppose you had the loose XAML like the below

<local:MyStackPanel

        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

        xmlns:local ="clr-namespace:DemoApp;assembly=DemoApp">

    <Button Click="Button_Click" >Date (Event on Root)</Button>

 

As long as the root object (in this case MyStackPanel) can be found, the event will be hooked and will work fine without a crash

à The second approach is to define a MarkupExtension that returns a delegate and assign this to the event. So you could have XAML like the below

 

<Button Click="{DelegateCreatingME}"/>

<Button Click="{DelegateCreatingME ChangeFontSize}" >

<Button Click="{DelegateCreatingME ChangeForeground,Brown}" />

 

 

The sample project using the CoreMVVM library is attached. 

 Note that XAML 2009 features work only for loose XAML in WPF.

Share this post

 

Attachment: WpfModelViewApplication2.zip