[Tips][CheckBox] テキストの末尾に省略記号を表示する

本記事はWindowsアプリケーションのTipsです。


コントロールのテキストが、指定されたコントロールの長さを超えることを示す省略記号文字 (…) を、コントロールの右端に表示するには、AutoSizeプロパティにFalse、AutoEllipsisプロパティにTrueを設定します。

サンプルでは、「このテキストは長すぎます」というテキストをCheckBox1とCheckBox2に設定しています。CheckBox1には省略記号が表示されるように設定してあります。

省略記号を表示する例

 

VBの例

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    Dim strMsg As String = "このテキストは長すぎます"
    CheckBox1.Text = strMsg
    Checkbox2.Text = strMsg
    CheckBox1.AutoSize = False
    CheckBox1.AutoEllipsis = True
End Sub

C#の例

private void Form1_Load(object sender, EventArgs e)
{
    string strMsg = "このテキストは長すぎます";
    checkBox1.Text = strMsg;
    checkBox2.Text = strMsg;
    checkBox1.AutoSize = false;
    checkBox1.AutoEllipsis = true;
}

[Tips][CheckBox] チェックマークの表示位置を設定する

本記事はWindowsアプリケーションのTipsです。


チェックマークの表示位置を設定するには、CheckAlignプロパティを使用します。
CheckAlignプロパティには表1のContentAlignment列挙体をセットします。

メンバー名 説明
BottomCenter 下端中央
BottomLeft 下端左寄
BottomRight 下端右寄
MiddleCenter 中段中央
MiddleLeft 中段左寄せ
MiddleRight 中段右寄せ
TopCenter 上段中央
TopLeft 上段左寄せ
TopRight 上段右寄せ

チェックマークの表示位置を設定する例

VBの例

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    CheckBox1.CheckAlign = ContentAlignment.TopLeft
    CheckBox2.CheckAlign = ContentAlignment.TopCenter
    CheckBox3.CheckAlign = ContentAlignment.TopRight
    CheckBox4.CheckAlign = ContentAlignment.MiddleLeft
    CheckBox5.CheckAlign = ContentAlignment.MiddleCenter
    CheckBox6.CheckAlign = ContentAlignment.MiddleRight
    CheckBox7.CheckAlign = ContentAlignment.BottomLeft
    CheckBox8.CheckAlign = ContentAlignment.BottomCenter
    CheckBox9.CheckAlign = ContentAlignment.BottomRight
End Sub

C#の例

private void Form1_Load(object sender, EventArgs e)
{
checkBox1.CheckAlign = ContentAlignment.TopLeft;
checkBox2.CheckAlign = ContentAlignment.TopCenter;
checkBox3.CheckAlign = ContentAlignment.TopRight;
checkBox4.CheckAlign = ContentAlignment.MiddleLeft;
checkBox5.CheckAlign = ContentAlignment.MiddleCenter;
checkBox6.CheckAlign = ContentAlignment.MiddleRight;
checkBox7.CheckAlign = ContentAlignment.BottomLeft;
checkBox8.CheckAlign = ContentAlignment.BottomCenter;
checkBox9.CheckAlign = ContentAlignment.BottomRight;
}

[Tips][CheckBox] チェック状態が変更されたことを知る

本記事はWindowsアプリケーションのTipsです。


チェック状態が変更されたことを知るには、CheckStateChanged イベントを使用します。

VBの例

Private Sub CheckBox1_CheckStateChanged(ByVal sender As Object, ByVal e As System.EventArgs) _
    Handles CheckBox1.CheckStateChanged

    'チェック状態の確認
    Select Case DirectCast(sender, CheckBox).CheckState
        Case CheckState.Checked
            MessageBox.Show("チェック状態に変更されました")
        Case CheckState.Indeterminate
            MessageBox.Show("中間の状態に変更されました")
        Case CheckState.Unchecked
            MessageBox.Show("未チェック状態に変更されました")
    End Select
End Sub

C#の例

private void checkBox1_CheckStateChanged(object sender, EventArgs e)
{
    //チェック状態の確認
    switch (((CheckBox)(sender)).CheckState)
    {
        case CheckState.Checked:
            MessageBox.Show("チェックされています。");
            break;
        case CheckState.Indeterminate:
            MessageBox.Show("中間の状態です。");
            break;
        case CheckState.Unchecked:
            MessageBox.Show("未チェック状態です。");
            break;
    }
}

[Tips][CheckBox] 3つの状態を使用する

本記事はWindowsアプリケーションのTipsです。


CheckBoxは3つの状態を表現することがきます。通常はチェックされた状態と未チェックの状態だけですが、これに加えて中間の状態(チェック状態でかつグレー表示)を表すことができます。3つの状態を表現できるようにするにはThreeStateプロパティをTrueにします。それぞれの状態は CheckStateプロパティを使用して切り替えます。CheckStateプロパティには表1に示すCheckState列挙対の値を指定します。

メンバ名 説明
Checked チェック状態
Unchecked 未チェック状態
Indeterminate チェック状態だがグレー表示

サンプルでは、フォームがロードされたときにチェックボックスが3つの状態を使用できるようにしています。また、Button1がクリックされたときに現在の状態を表示するようにしています。

VBの例

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    '3つの状態を使用できるようにする
    CheckBox1.ThreeState = True
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    'チェック状態の確認
    Select Case CheckBox1.CheckState
        Case CheckState.Checked
            MessageBox.Show("チェックされています。")
        Case CheckState.Indeterminate
            MessageBox.Show("中間の状態です。")
        Case CheckState.Unchecked
            MessageBox.Show("未チェック状態です。")
    End Select
End Sub

C#の例

private void Form1_Load(object sender, EventArgs e)
{
    //3つの状態を使用できるようにする
    checkBox1.ThreeState = true;
}

private void button1_Click(object sender, EventArgs e)
{
    //チェック状態の確認
    switch (checkBox1.CheckState)
    {
        case CheckState.Checked:
            MessageBox.Show("チェックされています。");
            break;
        case CheckState.Indeterminate:
            MessageBox.Show("中間の状態です。");
            break;
        case CheckState.Unchecked:
            MessageBox.Show("未チェック状態です。");
            break;
    }
}

[Tips][CheckBox] チェック状態を確認する

本記事はWindowsアプリケーションのTipsです。


チェックボックスのチェック状態を確認するには、Checkedプロパティを使用します。チェックされているときはTrueを返します。

VBの例

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    'チェック状態を確認する
    If CheckBox1.Checked Then
        MessageBox.Show("チェックされています。")
    Else
        MessageBox.Show("チェックされていません。")
    End If
End Sub

C#の例

private void button1_Click(object sender, EventArgs e)
{
    //チェック状態を確認する
    if (checkBox1.Checked)
        MessageBox.Show("チェックされています。");
    else
        MessageBox.Show("チェックされていません。");
}