我有一個帶有文本框和一些樣式的按鈕的數據模板。當焦點位於旁邊的文本框時,我想讓按鈕顯示鼠標懸停狀態。這可能嗎?僞造WPF鼠標懸停可能嗎?
我想它會涉及到這樣的事情。我可以通過使用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));
}
你可以發佈你的控制模板給我們看嗎? – 2009-01-23 19:02:56