You are almost there.
The problem is that everytime the timer ticks you update the slider value, which causes your slider value changed handler to fire, which sets the position on the video, causing it to skip.
Use a variable to suppress the code in the slider value changed handler before you update your slider value in the tick handler, like so:
bool suppressMediaPositionUpdate = false;
void TimerTickHandler(object sender, EventArgs e)
{
suppressMediaPositionUpdate = true;
sliderSeekBar.Value = mePlayerMain.Position.TotalSeconds;
}
void SliderValueChangedHandler(object sender, EventArgs e)
{
if(suppressMediaPositionUpdate)
{
suppressMediaPositionUpdate = false;
}
else
{
mePlayerMain.Position = TimeSpan.FromSeconds(sliderSeekBar.Value);
}
}
-----
Sorry about the formatting, wrote this from my phone.
EDIT: fixed the formatting :)