完全显示usercontrol后显示消息框

时间:2014-01-23 08:39:25

标签: c# winforms user-controls messagebox paintevent

我有一个来自 windows用户控件类control form。一旦表单显示,我需要根据条件显示message box。我试图使用form paint event handler来做这件事,但似乎开了两次。结果message box显示两次。怎么办呢?

public partial class SelectAccounts : UserControl
{
    private void SelectAccounts_Paint(object sender, PaintEventArgs e)
    {
         MessageBox.Show("something");
    }
}

1 个答案:

答案 0 :(得分:2)

我删除了之前的答案,您可以尝试以下代码。 使用变量来记住是否加载了用户控件。

    public partial class SelectAccounts : UserControl
    {
        bool _Shown = false;
        private void SelectAccounts_Paint(object sender, PaintEventArgs e)
        {
            if (!this._Shown)
            {
                this._Shown = true;
                MessageBox.Show("something");
            }
        }
    }