我有一些按钮,我希望在wpf加载时隐藏它们。 我用这个:
public MainWindow()
{
mySendButton.Visibility = Visibility.Hidden;
myReceiveButton.Visibility = Visibility.Hidden;
InitializeComponent();
}
但上面生成错误。我想我不是在正确的地方写的。 我可以帮忙吗?
答案 0 :(得分:1)
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" />
答案 1 :(得分:1)
问题是,您在初始化之前尝试访问该按钮。这种情况发生在InitializeComponent()
方法中。将这些行放在该方法下面:
public MainWindow()
{
InitializeComponent();
mySendButton.Visibility = Visibility.Hidden;
myReceiveButton.Visibility = Visibility.Hidden;
}
或者只是在可视化设计器中使用适当的属性。