0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Visual Studio / WPF > 07 控件的常用通用属性 > System.Windows.Visibility. > Collapsed | Hidden | Visible

Last updated at Posted at 2017-05-08
動作環境
Windows 7 Pro (32bit)
Microsoft Visual Studio 2017 Community
Sublime Text 2

ボタンを押したときにTextBoxコントロールの非表示・表示のコード例が紹介されている。

非表示・表示はVisibilityプロパティを設定するようだ。

  • System.Windows.Visibility.Collapsed;
    • 要素を表示しません。また、その要素の領域もレイアウト内に予約しません。
  • System.Windows.Visibility.Hidden;
    • 要素を表示しませんが、その要素の領域をレイアウト内に予約します。
  • System.Windows.Visibility.Visible;
    • 要素を表示します

試してみた。

MainWindow.xaml
<Window x:Class="_170509_t0615_visibility.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:_170509_t0615_visibility"
        mc:Ignorable="d"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <Button x:Name="B_show" Content="Show" HorizontalAlignment="Left" Margin="58,37,0,0" VerticalAlignment="Top" Width="75" Click="B_showClick"/>
        <TextBox x:Name="T_hello" HorizontalAlignment="Left" Height="23" Margin="164,47,0,0" TextWrapping="Wrap" Text="Hello" VerticalAlignment="Top" Width="120"/>
        <Button x:Name="B_collapse" Content="Collapse" HorizontalAlignment="Left" Margin="58,83,0,0" VerticalAlignment="Top" Width="75" Click="B_collapseClick"/>
        <Button x:Name="B_hide" Content="Hide" HorizontalAlignment="Left" Margin="58,130,0,0" VerticalAlignment="Top" Width="75" Click="B_hideClick"/>

    </Grid>
</Window>
MainWindow.xaml.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace _170509_t0615_visibility
{
    /// <summary>
    /// MainWindow.xaml の相互作用ロジック
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void B_showClick(object sender, RoutedEventArgs e)
        {
            T_hello.Visibility = System.Windows.Visibility.Visible;
        }

        private void B_collapseClick(object sender, RoutedEventArgs e)
        {
            T_hello.Visibility = System.Windows.Visibility.Collapsed;
        }

        private void B_hideClick(object sender, RoutedEventArgs e)
        {
            T_hello.Visibility = System.Windows.Visibility.Hidden;
        }
    }
}

collapseの状態
work.png

showした状態
work.png

備考

collapseとhiddenの違いは周りのコントロールの配置と関係するのかもしれない。
今後の使い方で消化予定。

Collapsed / Hidden / Visible という命名は対象性が悪い。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?