OpenFileDialog.ReadOnlyChecked 属性     
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置一个值,该值指示是否选定只读复选框。
public:
 property bool ReadOnlyChecked { bool get(); void set(bool value); };public bool ReadOnlyChecked { get; set; }member this.ReadOnlyChecked : bool with get, setPublic Property ReadOnlyChecked As Boolean属性值
如果选中了只读复选框,则为 true;反之,则为 false。 默认值是 false。
示例
下面的代码示例演示如何使用 ReadOnlyChecked 属性。 此示例显示 OpenFileDialog 属性设置为 true的ShowReadOnly框。 如果用户单击选项以只读模式打开文件,则 ReadOnlyChecked 属性的计算结果为 true,并使用 OpenFile 方法打开文件。 否则, FileStream 类用于在读/写模式下打开文件。
private:
   FileStream^ OpenFile()
   {
      // Displays an OpenFileDialog and shows the read/only files.
      OpenFileDialog^ dlgOpenFile = gcnew OpenFileDialog;
      dlgOpenFile->ShowReadOnly = true;
      if ( dlgOpenFile->ShowDialog() == ::DialogResult::OK )
      {
         // If ReadOnlyChecked is true, uses the OpenFile method to
         // open the file with read/only access.
         if ( dlgOpenFile->ReadOnlyChecked )
         {
            return dynamic_cast<FileStream^>(dlgOpenFile->OpenFile());
         }
         // Otherwise, opens the file with read/write access.
         else
         {
            String^ path = dlgOpenFile->FileName;
            return gcnew FileStream( path,System::IO::FileMode::Open,System::IO::FileAccess::ReadWrite );
         }
      }
      return nullptr;
   }
private FileStream OpenFile()
{
    // Displays an OpenFileDialog and shows the read/only files.
    OpenFileDialog dlgOpenFile = new OpenFileDialog();
    dlgOpenFile.ShowReadOnly = true;
    if(dlgOpenFile.ShowDialog() == DialogResult.OK)
    {
        // If ReadOnlyChecked is true, uses the OpenFile method to
        // open the file with read/only access.
        string path = null;
        try {
            if (dlgOpenFile.ReadOnlyChecked)
            {
                return (FileStream)dlgOpenFile.OpenFile();
            }
            // Otherwise, opens the file with read/write access.
            else
            {
                path = dlgOpenFile.FileName;
                return new FileStream(path, System.IO.FileMode.Open,
                            System.IO.FileAccess.ReadWrite);
            }
        } catch (SecurityException ex)
            {
                // The user lacks appropriate permissions to read files, discover paths, etc.
                MessageBox.Show("Security error. Please contact your administrator for details.\n\n" +
                    "Error message: " + ex.Message + "\n\n" +
                    "Details (send to Support):\n\n" + ex.StackTrace
                );
            }
            catch (Exception ex)
            {
                // Could not load the image - probably related to Windows file system permissions.
                MessageBox.Show("Cannot display the image: " + path.Substring(path.LastIndexOf('\\'))
                    + ". You may not have permission to read the file, or " +
                    "it may be corrupt.\n\nReported error: " + ex.Message);
            }
    }
    return null;
}
Private Function OpenFile() As FileStream
    ' Displays an OpenFileDialog and shows the read/only files.
    Dim DlgOpenFile As New OpenFileDialog()
    DlgOpenFile.ShowReadOnly = True
    If DlgOpenFile.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
        Dim path As New String("")
        ' If ReadOnlyChecked is true, uses the OpenFile method to
        ' open the file with read/only access.
        Try
            If (DlgOpenFile.ReadOnlyChecked = True) Then
                Return DlgOpenFile.OpenFile()
            Else
                ' Otherwise, opens the file with read/write access.
                Path = DlgOpenFile.FileName
                Return New FileStream(Path, System.IO.FileMode.Open, _
                        System.IO.FileAccess.ReadWrite)
            End If
        Catch SecEx As SecurityException
            ' The user lacks appropriate permissions to read files, discover paths, etc.
            MessageBox.Show("Security error. Please contact your administrator for details.\n\n" & _
                "Error message: " & SecEx.Message * "\n\n" & _
                "Details (send to Support):\n\n" & SecEx.StackTrace)
        Catch Ex As Exception
            ' Could not load the image - probably related to Windows file system permissions.
            MessageBox.Show("Cannot display the image: " & path.Substring(path.LastIndexOf("\\")) & _
                     ". You may not have permission to read the file, or " & _
                    "it may be corrupt.\n\nReported error: " + ex.Message)
        End Try
    End If
    Return Nothing
End Function
注解
状态 ReadOnlyChecked 不会影响使用 打开对话框中所选文件的读/写模式 OpenFileDialog.OpenFile 。 OpenFile 将始终以只读模式打开文件。
ShowReadOnly必须先设置 属性,才能在对话框中显示只读复选框。