【问题标题】:How do you PerformClick(); for a button on a different tab?你如何执行Click();对于不同选项卡上的按钮?
【发布时间】:2011-09-01 07:26:05
【问题描述】:

我正在使用 Visual c# express 2010,我有 3 个选项卡,第一个选项卡上有一个退出程序的按钮。我正在尝试调用该按钮单击第二个和第三个选项卡

btnExit.PerformClick(); 

但是由于它不可见,所以什么也没有发生。如何调用不可见的按钮点击?

任何帮助将不胜感激

编辑: 感谢您的回复,这两个答案都很好,但我找到了一种我认为更容易更好的方法。

我没有系统地更改选项卡或调用完全不同的方法,而是这样做了

btnExit_Click(sender, e);

我可以把它放在任何其他按钮点击中,效果很好,非常简单。

【问题讨论】:

    标签: c# winforms visual-studio-2010 button event-handling


    【解决方案1】:
    myTabs.SelectedTab = specificTab;
    btnExit.PerformClick(); 
    

    【讨论】:

    • 编辑了 sn-p。首先激活选项卡,然后执行单击。在此之后,您可以返回初始选项卡。
    • 按钮所在的标签页。
    【解决方案2】:

    我认为创建一个实际具有退出程序的代码的方法,并从 btnExit 单击事件和其他按钮单击事件调用该方法,而不是退出按钮的 PerformClick。

    void ExitApplication()
    {
       // code to exit the application
    }
    
    protected void btnExit_Click(object sender, EventArgs e)
    {
       ExitApplication();
    }
    protected void ButtonInOtherTab_Click(object sender, EventArgs e)
    {
       ExitApplication();
    }
    

    这样更容易阅读和理解。

    【讨论】:

    • 是的,如果我只是想让它退出应用程序,这会更容易一些。但是当我按下初始退出按钮时,还会运行其他代码,例如保存输入的文本等。调用按钮然后为每个按钮设置正确的代码会容易得多。
    • 但我想我也可以将该代码放入 ExitApplication() 方法中。谢谢,我可以这样做。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多