我正在从C#代码中添加MouseEnter
事件处理程序,如下所示:
var polygon = new Polygon { StrokeThickness = 1, Fill = Brushes.Blue };
polygon.MouseEnter += new MouseEventHandler(p_MouseLeftButtonDown2);
...
void p_MouseLeftButtonDown2(object sender, MouseEventArgs e)
{
MessageBox.Show("Entered");
}
如何在p_MouseLeftButtonDown2
中更改多边形的颜色?
答案 0 :(得分:2)
有很多方法可以解决这个问题。 我认为U R在WPF中真的很新,也许在C#中也是如此,所以我想为你提供以下解决方案:
void p_MouseLeftButtonDown2(object sender, MouseEventArgs e)
{
Polygon poly = sender as Polygon;
if (poly != null)
poly.Fill = Brushes.Red;
}
奇特的方式是Storyboard
答案 1 :(得分:1)
将其放入p_MouseLeftButtonDown2
方法:
((Polygon)sender).Fill = Brushes.Black; //whatever color you need
但是,如果我是你,我会研究用MVVM方法替换整个代码隐藏的可能性。