Przeczytałem już kilka wątków na ten temat, ale nadal nie wiem, jak rozwiązać ten problem w moim przypadku. Pochodzę z Java i przede wszystkim nowe do C#Nie można niejawnie przekonwertować typu "System.EventHandler" na "System.EventHandler <object>" w celu ukończenia zestawu scenariuszy
chcę dołączyć słuchacza po zakończeniu animacji:
myStoryBoard.Completed += new EventHandler(onMyStoryBoardCompleted);
oraz:
private void onMyStoryBoardCompleted(object sender, EventArgs e)
{
}
I pojawia się błąd w tytule. Próbowałem:
myStoryBoard.Completed += new EventHandler<object>(onMyStoryBoardCompleted);
Ale wtedy pojawia się:
no overload for 'onMyStoryBoardCompleted' matches delegate 'System.EventHandler<object>'
Wygląda więc na to, że podpis nie jest kompatybilny z EventHandler <object>
i nie mogłem znaleźć sposób, aby był kompatybilny, ja również don” t wiedzieć, czy to podejście jest poprawne.
czytam
Understanding events and event handlers in C#
defining event handler for Tick event of DispatcherTimer in windows 8 app
Ale nadal nie znaleźć rozwiązanie dla tego przypadku.
Z góry dziękuję.
'myStoryBoard.Completed + = new EventHandler (onMyStoryBoardCompleted);' powinien zadziałać – SLaks
Którą klasę StoryBoard używasz? Jeśli pochodzi od "osi czasu", słowo "Completed" powinno zostać zdefiniowane jako typ EventHandler, co oznacza, że powinno się skompilować bez błędu. –
Odwołuję się do storyboardu z XAML w UserControl.Resource tag – Ixx