public virtual void CommandInDataTemplate() { string xaml = @" <Grid> <Grid.Resources> <DataTemplate x:Key=""temp""> <Button Command=""{b:DXCommand 'Method($test:BindingTests_a.StaticIntProp)'}""/> </DataTemplate> </Grid.Resources> <ContentControl Content=""{b:DXBinding}"" ContentTemplate=""{StaticResource temp}""/> <ContentControl Content=""{b:DXBinding}"" ContentTemplate=""{StaticResource temp}""/> </Grid> "; var panel = BindingTestHelper.LoadXaml <Grid>(xaml); BindingTestHelper.VisualTest(panel, () => { BindingTests_a.Static(2); var vm = CommandTests_a.Create(); var tb1 = LayoutTreeHelper.GetVisualChildren(panel.Children[0]).OfType <Button>().First(); var tb2 = LayoutTreeHelper.GetVisualChildren(panel.Children[1]).OfType <Button>().First(); panel.DataContext = vm; BindingTestHelper.DoEvents(panel); BindingTestHelper.DoCommand(tb1); Assert.AreEqual(1, vm.MethodCounter); BindingTestHelper.DoCommand(tb2); Assert.AreEqual(2, vm.MethodCounter); }); }
public virtual void EventInDataTemplate() { string xaml = @" <Grid> <Grid.Resources> <DataTemplate x:Key=""temp""> <test:EventTests_visual CustomEvent=""{b:DXEvent 'Do4($test:BindingTests_a.StaticIntProp)'}""/> </DataTemplate> </Grid.Resources> <ContentControl Content=""{b:DXBinding}"" ContentTemplate=""{StaticResource temp}""/> <ContentControl Content=""{b:DXBinding}"" ContentTemplate=""{StaticResource temp}""/> </Grid> "; var panel = BindingTestHelper.LoadXaml <Grid>(xaml); BindingTestHelper.VisualTest(panel, () => { BindingTests_a.Static(2); var vm = EventTests_a.Create(); var tb1 = LayoutTreeHelper.GetVisualChildren(panel.Children[0]).OfType <EventTests_visual>().First(); var tb2 = LayoutTreeHelper.GetVisualChildren(panel.Children[1]).OfType <EventTests_visual>().First(); panel.DataContext = vm; BindingTestHelper.DoEvents(panel); tb1.RaiseCustomEvent(); tb2.RaiseCustomEvent(); Assert.AreEqual(2, vm.Do4Counter); }); }