Я следовал инструкциям принятого ответа от этого поста в отношении создания кода для файла для словаря ресурсов, и это сработало ... так что теперь я могу прикреплять события к элементам управления в generic.xml файл.
Но теперь я хочу иметь возможность вызывать метод DragMove()
из какого-либо события, и поскольку в то время нет никаких ссылок на окно, содержащее словарь, я не знаю, как это вызвать DragMove()
метод.
Итак, из кода словаря ресурсов за файлом, можно ли как-нибудь сделать ссылку на окно, в котором в данный момент будет размещен этот словарь ресурсов?
[Обновление] (временное решение)
В качестве простого (но глупого) обходного пути в настоящее время я сделал следующее:
Поскольку я могу ссылаться на Application.Current.MainWindow
из кода Generic.xaml.cs
, теперь у меня есть это в Generic.xaml.cs
:
private void Border_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
Application.Current.MainWindow.DragMove();
}
А потом я прикрепляю обработчик PreviewMouseLeftButtonDown
к каждому Window
, вот так:
private void Window_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
Application.Current.MainWindow = this;
}
Это, ну, это работает ... и пока кто-то не сможет придумать, как это сделать, Он должен служить мне достаточно хорошо.