WinformsとWPFのCheckBoxのコードの違い

CheckBoxだけに限らずコントロールのプロパティやメソッドは微妙に違っております。

Winforms

            chkMic.Enabled = true;
            chkMic.Checked = false;
            chkMic.Text = "Microphone";
            chkMic.Visible = true;
            chkMic.Visible = false;
           if (chkMic.Checked) MessageBox.Show("Checked");



WPF

            chkMic.IsEnabled = true;
            chkMic.IsChecked = false;
            chkMic.Content = "Microphone";
            chkMic.Visibility = Visibility.Visible;
            chkMic.Visibility = Visibility.Collapsed;
            chkMic.Visibility = Visibility.Hidden;
            if (chkMic.IsChecked.Value) MessageBox.Show("Checked");


WPFのif文でif (chkMic.IsChecked == true)にしないとエラーになったのでなぜなのかわかりませんでした「.Value」をつけると問題ないことがわかりました。
VisibleのfalseにあたるものがVisibility.CollapsedとVisibility.Hiddenとありますが見えなくする機能は同じです。前者は領域確保がなく消えます後者は領域確保されます。Winformsとレイアウトの考え方が違うのでそのようになっています。チェックボックスの文字に関してはWinformsで「.Text」で統一されているのに対してWPFの表示系のコントロールはContentになっています。

Follow me!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です