深入浅出WPF 第二部分(15)
第8章 深入浅出话事件
8.1 近视WPF的树形结构
WPF中有两种"树":一种叫逻辑树(Logical Tree),一种叫可视元素树(Virtual Tree)。那么当一个路由事件被激发后是沿着Virtual Tree传递的。
8.2 事件的来龙去脉
事件模型的几个关键部分:
事件的拥有者:myButton。事件:myButton.Click。事件的响应者:窗体本身。事件处理器:this.myButton_Click方法。订阅关系:可以在Form1.Designer.cs文件中找到一句代码是 this.buttonLogin.Click += new System.Windows.RoutedEventHandler(this.buttonLogin_Click);8.3 深入浅出路由事件
8.3.1 使用WPF内置路由事件
<Grid x:Name="gridRoot" Background="Lime" ButtonBase.Click="ButtonClicked"> <Grid x:Name="gridA" Margin="10" Background="Blue"> <Grid.ColumnDefinitions> <ColumnDefinition/> <ColumnDefinition/> </Grid.ColumnDefinitions> <Canvas x:Name="canvasLeft" Grid.Column="0" Background="Red" Margin="10"> <Button x:Name="buttonLeft" Content="Left" Width="40" Height="100" Margin="10"/> </Canvas> <Canvas x:Name="canvasRight" Grid.Column="1" Background="Yellow" Margin="10"> <Button x:Name="buttonRight" Content="Right" Width="40" Height="100" Margin="10"/> </Canvas> </Grid> </Grid>