gottfocus上的高亮线

本文关键字:高亮 gottfocus | 更新日期: 2023-09-27 18:04:08

我想突出显示被单击的行。就像TreeViewItem在被选中或被聚焦时是高亮的(看起来,有一个区别——当它被聚焦(和被选中)时,它的高亮颜色是蓝色的,如果它只是被选中并失去聚焦,它的高亮颜色是灰色的)。我试图在不知道我想要更改哪个属性的情况下捕获Line的Gotfocus事件,但它甚至没有触发(尽管Focusable = true)。我得到了MouseDown事件触发(我主要不想为此使用),仍然不知道要改变哪个属性。微软和谷歌没有给出任何有意义的结果。什么好主意吗?

gottfocus上的高亮线

您可以为这类工作使用样式和触发器。您不需要任何代码,只要XAML就可以工作。创建一个触发器,一旦mouse down = true就会触发在这个触发器中改变线条的颜色或者背景的颜色或者你想要的任何东西

现在检查一下

例如

 <Path Data="M101,42 L380,76" Fill="#FFF4F4F5" Height="35" 
    Margin="101,42,243,0" Stretch="Fill" Stroke="Black" 
VerticalAlignment="Top" MouseEnter="Path_MouseEnter" Name="myLine"/>
c#

private void Path_MouseEnter(object sender, 
System.Windows.Input.MouseEventArgs e)
{
    myLine.Stroke = new SolidColorBrush(Colors.Green);
}