我的Winform窗体当中包含有一个Timer控件和一个PropertyGrid控件,
在Timer的Tick事件间隔设置的很小(1ms),
我发现在Tick事件的委托函数中进行一个一定时长的调用(50毫秒左右)后,
PropertyGrid控件中的一些下拉列表会无法响应。
可以确定和调用的内容无关,我用如下简单代码做过测试:
DateTime s_timepre = DateTime.Now;
private void timer1_Tick(object sender, EventArgs e)
{
int eMS = 0;
Console.WriteLine("开始一个50毫秒调用 ....");
while (eMS < 50)
{
DateTime dt = DateTime.Now;
TimeSpan ts = dt - s_timepre;
eMS = (int)(ts.Ticks / TimeSpan.TicksPerMillisecond);
}
s_timepre = DateTime.Now;
}有大虾知道原因么?大谢啦!
在Timer的Tick事件间隔设置的很小(1ms),
我发现在Tick事件的委托函数中进行一个一定时长的调用(50毫秒左右)后,
PropertyGrid控件中的一些下拉列表会无法响应。
可以确定和调用的内容无关,我用如下简单代码做过测试:
DateTime s_timepre = DateTime.Now;
private void timer1_Tick(object sender, EventArgs e)
{
int eMS = 0;
Console.WriteLine("开始一个50毫秒调用 ....");
while (eMS < 50)
{
DateTime dt = DateTime.Now;
TimeSpan ts = dt - s_timepre;
eMS = (int)(ts.Ticks / TimeSpan.TicksPerMillisecond);
}
s_timepre = DateTime.Now;
}有大虾知道原因么?大谢啦!
在Timer的Tick事件间隔设置的50ms有啥区别?
直接设50ms不就行了吗?
现在的效果是每隔1ms调用一个耗时50ms的内容。直接设50是每隔50调用一次耗时50ms的内容