一尘不染

如何禁用TabControl内的选项卡?

c#

有没有一种方法可以禁用TabControl中的选项卡?

我正在使用C#。


阅读 629

收藏
2020-05-19

共1个答案

一尘不染

TabPage的类隐藏Enabled属性。这是故意的,因为它存在一个尴尬的UI设计问题。基本问题是禁用页面不会同时禁用选项卡。而且,如果尝试通过使用Selecting事件禁用选项卡来解决此问题,则当TabControl只有一页时,它将不起作用。

如果您不关心这些可用性问题,那么请记住,该属性仍然有效,它只是对IntelliSense隐藏。如果FUD不舒服,则只需执行以下操作:

public static void EnableTab(TabPage page, bool enable) {
    foreach (Control ctl in page.Controls) ctl.Enabled = enable;
}
2020-05-19