Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 两个控件显示在其他控件之前_C#_.net_Vb.net_User Controls - Fatal编程技术网

C# 两个控件显示在其他控件之前

C# 两个控件显示在其他控件之前,c#,.net,vb.net,user-controls,C#,.net,Vb.net,User Controls,我在表单上有一个UserControl,用作数据输入表单。我经常用新数据显示和隐藏它 通常(并非所有时候)相同的两个备忘框会先在屏幕上显示一秒钟,然后显示完整控件 我找到了link,我不确定这是否是我的解决方案,但无论如何我都不知道在哪里和什么时候调用它 编辑:我注意到只有当程序空闲几分钟时才会发生这种情况。 我可以一个接一个地显示和隐藏控件10次没有问题。但是如果我在2-3分钟后隐藏它并再次显示它,那么我就会得到这种行为 我想这与重新连接MsSQL数据库以提取数据所需的时间有关。但是我如何才能

我在表单上有一个UserControl,用作数据输入表单。我经常用新数据显示和隐藏它

通常(并非所有时候)相同的两个备忘框会先在屏幕上显示一秒钟,然后显示完整控件

我找到了link,我不确定这是否是我的解决方案,但无论如何我都不知道在哪里和什么时候调用它

编辑:我注意到只有当程序空闲几分钟时才会发生这种情况。 我可以一个接一个地显示和隐藏控件10次没有问题。但是如果我在2-3分钟后隐藏它并再次显示它,那么我就会得到这种行为


我想这与重新连接MsSQL数据库以提取数据所需的时间有关。但是我如何才能告诉这两个框保持不可见,就像父框一样,直到父框准备好显示为止?

这真的很草率,可能有更好的解决方案,但如果您尝试类似的方法会怎么样

If SlowControl.visible = True Then
FastControl1.visible = True
FastControl2.visible = True
End If

我不确定这是否有效,因为我不知道如何复制问题进行测试,但请尝试一下,看看它是否会延迟领先于游戏的2个问题,直到其他问题出现才显示出来

在显示控件之后但在返回到主事件循环之前,您将立即执行什么操作?基本上,在控件有机会绘制之前,似乎还有其他事情在进行,例如数据库访问或其他网络访问。建议将控件保持加载状态,但直到最后一刻才使用visible=false。我执行TicketsBox.visible=True最后一件可能的事情…您是先执行TicketsBox.visible=false,还是从可见开始?在加载事件上放置一个断点以进行检查。尝试在VisibleChanged事件内移动您的TicketsBox.Visible=True。除非您具有异步绑定,否则页面在完全呈现之前不应开始绘制。您是绑定异步还是通过后台工作程序更新数据。如果数据是如此动态,以至于您不能将其保存在变量中,而不是每次获取时都返回DB?