我对 WPF+C# 真的很陌生,并试图在 msdn 和 stack 上赶上很多教程。我目前正在尝试更改ismouseover上所有对象(同时)的颜色(绘制房子)。我可以一次用一个对象(下面的代码中的触发器)执行此操作,但无法找出同时更改所有颜色的方法,这是我的 xaml 代码,我没有在 xaml.cs 中添加任何内容我猜我需要创建一些 for 循环,但我不明白如何将 xaml 中绘制的对象链接到 xaml.cs 中的代码
<Window x:Class="LAB2.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="400" Width="600">
<Canvas>
<Rectangle Canvas.Left="86" Canvas.Top="190" Height="171" Name="body" Stroke="Black" Width="387"/>
<Rectangle Canvas.Left="118" Canvas.Top="229" Height="82" Name="window" Stroke="Black" Width="89"/>
<Rectangle Canvas.Left="346" Canvas.Top="229" Height="132" Name="door" Stroke="Black" Width="83"/>
<Polygon Points="10,110 230,10 500,110" Fill="Blue" Stroke="Black" Name="triangle" Canvas.Left="35" Canvas.Top="86" />
<Rectangle Canvas.Left="156" Canvas.Top="109" Height="61" Name="chimney" Stroke="Black" Width="36">
<Rectangle.Style>
<Style TargetType="{x:Type Rectangle}">
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Fill" Value="Red" />
</Trigger>
<Trigger Property="IsMouseOver" Value="False">
<Setter Property="Fill" Value="Blue" />
</Trigger>
</Style.Triggers>
</Style>
</Rectangle.Style>
</Rectangle>
</Canvas>
<Window.Resources>
</Window.Resources>