如何隐藏文本框,标签和按钮C#WPF

时间:2011-11-27 07:07:53

标签: c# .net wpf visibility

我想在单击按钮时隐藏多个文本框,标签和按钮...但是,出于某种原因,我的代码似乎不会导致此效果。似乎没有任何事情发生。我正在使用WPF。

这是我的代码:

private void doSomething_Click(object sender, RoutedEventArgs e)
    {

        Name.Visibility = Visibility.Hidden; 

    }

此代码似乎不起作用..任何想法?

5 个答案:

答案 0 :(得分:11)

我相信Visibility.Collapsed是你需要的而不是Visibility.Hidden

编辑:您是否尝试使用父元素/组件的UpdateLayout()方法跟进此代码?

答案 1 :(得分:7)

您的代码似乎工作正常,其他所有内容消失后,“登录...”标签会出现。我建议你只需将.xaml.cs文件和.xaml文件中的所有代码复制到一个新项目中,但要确保不要复制第一行"<Window x:Class="...",因为它可能会产生错误,如果类名在新项目中不相同。

对于xaml代码,我建议你不要像设计Windows窗体应用程序那样思考。 WPF具有布局系统,在重新调整窗口大小时重新定位或重新调整其元素的大小。所以你不应该在margin属性中指定确切的数字,就好像它们在坐标中一样。创建网格,为每个元素创建行或列,然后只设置水平或垂直对齐或边距。认为不同于旧的Windows窗体方式。

答案 2 :(得分:4)

我已经运行了你的代码......它对我很有用。我没有改变任何东西(变量名除外),所以我猜这是VS的一个bug。

如上所述,nikolamm94尝试在this.UpdateLayout();末尾添加connect_Click,这可能有所帮助。我试过,它仍然工作正常。或者也许创建一个新的VS projet,它已经为我工作了几次。

抱歉,我的答案不是最有帮助的,我想发表评论,但我没有足够的声誉:/

答案 3 :(得分:0)

您可以通过转到properties-&gt; appearance-&gt;可见性隐藏文本框,然后将其设置为&#34;隐藏&#34;

答案 4 :(得分:0)

请参阅:https://msdn.microsoft.com/en-us/library/ms748821(v=vs.85).aspx

设置为Visible:tb1.Visibility = System.Windows.Visibility.Visible;

设置为隐藏:tb1.Visibility = System.Windows.Visibility.Hidden;