我有一个带有文本框和样式按钮的数据模板。当焦点在旁边的文本框上时,我希望按钮显示鼠标悬停状态。这可能吗?
我认为它需要类似以下的内容。我可以通过使用FindVisualChild和FindName获取文本框。然后我可以设置文本框上的GotFocus事件来执行某些操作。
_myTextBox.GotFocus += new RoutedEventHandler(TB_GotFocus);
在TB_GotFocus这里我卡住了。我可以获取想要显示鼠标悬停状态的按钮,但我不知道要发送什么事件。MouseEnterEvent是不允许的。
void TB_GotFocus(object sender, RoutedEventArgs e)
{
ContentPresenter myContentPresenter = FindVisualChild<ContentPresenter>(this.DataTemplateInstance);
DataTemplate template = myContentPresenter.ContentTemplate;
Button _button= template.FindName("TemplateButton", myContentPresenter) as Button;
_button.RaiseEvent(new RoutedEventArgs(Button.MouseEnterEvent));
}