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