Datetime が開始されているかどうかを毎秒チェックするコードを作成するのに助けが必要です。開始されている場合は、すでに実行中の関数を閉じる必要があります。私はdispatchertimerを知っていますが、バックグラウンドでスレッドを実行したいです。その理由は、datetime が開始されるまで再生するメディア プレーヤーがあり、ムービーが 1 秒ごとに再起動されるためです。
少し必死になっている私を助けていただければ、とても感謝しています...
Dictionary<string, string> listBox3Dict = new Dictionary<string, string>();
private bool listbox3job()
{
AxWMPLib.AxWindowsMediaPlayer axWmp =
wfh.Child as AxWMPLib.AxWindowsMediaPlayer;
DateTime? start = DateTimePicker1.Value;
DateTime? end = DateTimePicker2.Value; // This. End date. If end date. Stop movie.
DateTime now = DateTime.Now;
if (start == null || end == null)
{
}
else if (now >= start.Value && now <= end.Value)
{
foreach (var selected in listBox3.Items)
{
string s = selected.ToString();
if (listBox3Dict.ContainsKey(s))
{
axWmp.URL = (listBox3Dict[s]);
}
}
return true;
}
return false;
}