我有这个 XAML 代码:
<Window x:Class="TTT_01.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525" MouseLeftButtonDown="Window_MouseLeftButtonDown">
<Canvas>
<Rectangle Canvas.Left="146" Canvas.Top="110" Height="100" Name="rectangle1" Stroke="Black" Width="200" />
</Canvas>
</Window>
这是后面的 C# 代码:
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void Window_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
if (rectangle1.IsMouseOver)
{
MessageBox.Show("Click!");
}
}
}
我看到的是一个白色的矩形。当我单击矩形时,我希望会弹出消息框。但这不会发生,除非我Fill
在 XAML 或 MainWindow 构造函数中初始化矩形的属性。即使我单击矩形,也没有被Fill
初始化。rectangle1.IsMouseOver
false
有什么Fill
关系IsMouseOver
?