【问题标题】:How to tell if user control is done loading in vb6如何判断用户控件是否已在 vb6 中完成加载
【发布时间】:2015-05-07 01:50:35
【问题描述】:

如何判断 VB6 用户控件是否已完成加载?是否有自定义的UserControl_Loaded 事件或其他什么?

【问题讨论】:

    标签: vb6


    【解决方案1】:

    加载是什么意思? UserControl 有一个 Initialize 事件,您应该使用它来设置初始值。然后 VB 本身将加载属性值。在任何其他事件中,您都可以假设控件已设置并准备就绪。

    您可以在此处阅读有关 UserControl 的事件顺序:https://msdn.microsoft.com/en-us/library/aa242140%28v=vs.60%29.aspx

    【讨论】:

    • 我的意思是,初始化后会触发什么事件?在 .NET 中,它是 UserControl_Loaded。如果有的话,它的 VB6 版本是什么?
    • 它在我发布的 url 中说“对于 UserControl 对象,Load 和 Unload 被 ReadProperties 和 WriteProperties 事件所取代。”
    【解决方案2】:

    我倾向于将“加载”逻辑放入 InitProperties 和 ReadProperties 事件处理程序中。第一个在将 UserControl 实例添加到 IDE 中的容器(窗体、另一个 UserControl)时调用。第二个在 IDE 中和运行时在所有后续“创建”中调用。

    您可以检查 Ambient.UserMode 以确定后续创建的 ReadProperties 事件是否是由于编辑操作与 IDE 或编译运行。

    初始化事件总是发生,并且在其他两个事件之前发生。那时 Ambient 和其他上下文对象还不可用。

    请看那本精美的手册:Understanding Control Lifetime and Key Events

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-09-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多