[Tips][OpenFileDialog] [読み取り専用]チェックボックスを表示する

OpenFileDialogは、ShowReadOnlyプロパティにTrueを設定すると[読み取り専用]チェックボックスを表示させることができます(既定ではShowReadOnlyプロパティはFalseです)。

表示されたダイアログで、ユーザーが[読み取り専用]チェックボックスにチェックを付けたかどうかを調べるにはReadOnlyCheckedプロパティを参照します。

ReadOnlyCheckedプロパティがTrueであれば[読み取り専用]チェックボックスにチェックが付けられたことになります。

下記はOpenFileDialogに[読み取り専用]チェックボックスを表示する例です。

サンプルの画面は下記のようにデザインしました。

[読み取り専用]チェックボックスにチェックを付けて[ファイルの選択]ボタンを押すと、[読み取り専用]チェックボックスがあるダイアログが表示されます。

VBの例

' [ファイルの選択]ボタンクリック時の処理
Private Sub btnOpenDialog_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOpenDialog.Click
    '★★★[読み取り専用]チェックボックス設定★★★
    OpenFileDialog1.ShowReadOnly = chkReadonly.Checked

    'フィルターの設定
    OpenFileDialog1.Filter = "画像ファイル|*.bmp;*.gif;*.png"

    'ダイアログボックスの表示
    If OpenFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
        '選択されたファイルをテキストボックスに表示する
        txtSelectedFile.Text = OpenFileDialog1.FileName

        '★★★[読み取り専用]にチェックが付けられたか確認★★★
        If OpenFileDialog1.ReadOnlyChecked Then
            MessageBox.Show("[読み取り専用]がチェックされました")
        End If
    End If
End Sub

C#の例

// [ファイルの選択]ボタンクリック時の処理
Private void btnOpenDialog_Click(object sender, EventArgs e)
{
    // ★★★[読み取り専用]チェックボックス設定★★★
    openFileDialog1.ShowReadOnly = chkReadonly.Checked;

    // フィルターの設定
    openFileDialog1.Filter = "画像ファイル|*.bmp;*.gif;*.png";

    // ダイアログボックスの表示
    if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
    {
        // 選択されたファイルをテキストボックスに表示する
        txtSelectedFile.Text = openFileDialog1.FileName;

        // ★★★[読み取り専用]にチェックが付けられたか確認★★★
        if ( openFileDialog1.ReadOnlyChecked )
        {
            MessageBox.Show("[読み取り専用]がチェックされました");
        }
    }
}

実行例

“[Tips][OpenFileDialog] [読み取り専用]チェックボックスを表示する” への1件の返信

コメントを残す

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください