Что VB.NET эквивалентен из этого кода C# для обеспечения электричеством и объявления события?

Я работаю над учебным руководством для создания медиаплеера в Silverlight и пытаюсь обеспечить электричеством EventHandler к timer.Tick событие a DispatchTimer возразите так, чтобы время видео синхронизировалось с a Slider объект.

Пример кода находится в C#, и я не могу ни за что в жизни выяснить правильный синтаксис в VB.NET с RaiseEvent и/или Handles обеспечить электричеством событие. Ниже соответствующий код C#. Я буду включать комментарии, где я застреваю.

private DispatchTimer timer;

public Page()
{
    //...
    timer = new DispatchTimer();
    timer.Interval = TimeSpan.FromMilliseconds(50);
    timer.Tick += new EventHandler(timer_Tick); // <== I get stuck here b/c
        // I can't do "timer.Tick += ..." in VB.NET
}

void timer_Tick(object sender, EventArgs e)
{
     if (VideoElement.NaturalDuration.TimeSpan.TotalSeconds > 0)
     {
         sliderScrubber.Value = VideoElement.Position.TotalSeconds /
             VideoElement.NaturalDuration.TimeSpan.TotalSeconds;
     }
}

5
задан Ben McCormack 26 May 2010 в 01:20
поделиться

1 ответ

Примерно так:

AddHandler timer.Tick, AddressOf timer_Tick

В качестве альтернативы,

Private WithEvents timer as DispatcherTimer


Sub timer_Tick(sender As Object, e As EventArgs) Handles timer.Tick

End Sub
15
ответ дан 18 December 2019 в 11:54
поделиться