Я пытаюсь создать метод, в котором я могу получить элемент, который был нажат. В App.xaml.cs у меня есть метод OnPreviewMouseDown, который активируется для каждого нажатия в приложении.получить имя элемента под курсором мыши по щелчку мыши
Теперь мне нужна помощь с получением имени элемента от отправителя (если это вообще возможно)
static void OnPreviewMouseDown(object sender, MouseButtonEventArgs e)
{
if (e.RightButton == MouseButtonState.Pressed)
{
Control control = (Control)sender; // Sender gives you which control is clicked.
string name = control.Name.ToString(); //returns main window name, not element....
string typee = sender.GetType().ToString(); //returns PPPMain.Views.MainWindow
}
}
Я попытался это и некоторые другие предложения из Интернета, но не нашел решения ...
Заранее спасибо!
' PreviewMouseDown' начинается с окна и работает. 'MouseDown' начинается с элемента управления и работает так, как надо. Это называется «туннелирование» и «пузырение» соответственно. – Abion47
Возможный дубликат [WPF Get Element (s) под мышью] (http://stackoverflow.com/questions/45813/wpf-get-elements-under-mouse) – Pikoh