c#FormClosed事件的问题

时间:2011-05-10 10:14:21

标签: c# .net

我在我的表单上运行网络摄像头。为了整洁,我想在退出应用程序时终止流。所以我把它添加到我的FormClosed事件中:

private void Mainform_FormClosed(object sender, FormClosedEventArgs e)
{
     // When the window is closed then shut down the webcam
     if (FinalVideoSource.IsRunning)
     {
         FinalVideoSource.Stop();
     }
     MessageBox.Show("Closing", "Closing", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}

如果我的网络摄像头正在运行,一切都很好。但是,如果网络摄像头经过测试并发现无法运行。然后我的表单没有关闭(我已将消息框放在那里以测试是否甚至调用了该事件,并且除非网络摄像头正在运行,否则不会显示该消息)。

我猜测在我的表单中包含if语句会导致问题。

有人可以帮忙吗?

非常感谢, 本

2 个答案:

答案 0 :(得分:1)

也许您还应该检查FinalVideoSource是否= null。

答案 1 :(得分:0)

使用FormClosing Event而不是FormClosed Event