这是我想要做的事情:我有许多充当按钮的路径,我想在鼠标移开和鼠标退出时更改其中任何一个的填充颜色。为此,我想创建一个函数,扫描鼠标输入的当前路径的名称,将其存储在变量或字符串中,然后使用它来更改填充颜色。
问题是:我不知道如何将字符串转换为UI元素,过去在Windows窗体上工作的任何内容似乎都不适用于WPF。检索元素名称的代码可以正常工作。
private void MouseEnter(object sender, MouseEventArgs e)
{
var mouseWasDownOn = e.Source as FrameworkElement;
if (mouseWasDownOn != null)
{
string elementName = mouseWasDownOn.Name;
[no idea what goes here].Fill = new SolidColorBrush(Color.FromArgb(255, 193, 194, 194));
}
}
提前谢谢。
答案 0 :(得分:0)
谢谢Clemens。
这就是答案:
private void MouseEnter(object sender, MouseEventArgs e)
{
var mouseWasDownOn = e.Source as FrameworkElement;
if (mouseWasDownOn != null)
{
string elementName = mouseWasDownOn.Name;
((Path)mouseWasDownOn).Fill = new SolidColorBrush(Color.FromArgb(255, 193, 194, 194));
}
}
或更短:
private void MouseEnter(object sender, MouseEventArgs e)
{
((Path)sender).Fill = new SolidColorBrush(Color.FromArgb(255, 193, 194, 194));
}