启动时WPF中的按钮可见性

本文关键字:按钮 可见性 WPF 启动 | 更新日期: 2023-09-27 17:54:28

我有一些按钮,我希望他们隐藏当wpf加载。我用这个:

public MainWindow()
    {
        mySendButton.Visibility = Visibility.Hidden;
        myReceiveButton.Visibility = Visibility.Hidden;                                                
        InitializeComponent();
    }

但是上面生成了一个错误。我想我写错地方了。能帮我一下吗?

启动时WPF中的按钮可见性

InitializeComponent方法初始化组件,在您的示例中是按钮。在InitializeComponent调用之前的按钮是null,因为它们没有初始化并且设置其可见性会抛出异常。

这就是为什么在某些语言中它被写成

//Add any code after the InitializeComponent() call.

你需要做

public MainWindow()
{
    InitializeComponent();
    mySendButton.Visibility = Visibility.Hidden;
    myReceiveButton.Visibility = Visibility.Hidden;                        
}

顺便说一句,你可以在XAML中这样设置可见性。

<Button name="mySendButton" Content"Send" Visibiity="Collapsed" />

问题是,您试图在初始化按钮之前访问该按钮。这发生在InitializeComponent()方法中。在该方法的下面放置行:

public MainWindow()
{                                                
    InitializeComponent();
    mySendButton.Visibility = Visibility.Hidden;
    myReceiveButton.Visibility = Visibility.Hidden;
}