OpenFileDialog.ShowReadOnly Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft einen Wert ab, der angibt, ob das Dialogfeld ein schreibgeschütztes Kontrollkästchen enthält, oder legt diesen fest.
public:
property bool ShowReadOnly { bool get(); void set(bool value); };
public bool ShowReadOnly { get; set; }
member this.ShowReadOnly : bool with get, set
Public Property ShowReadOnly As Boolean
Eigenschaftswert
true
, wenn das Dialogfeld ein Kontrollkästchen für den Schreibschutz enthält, andernfalls false
. Der Standardwert ist false
.
Beispiele
Im folgenden Codebeispiel wird die Verwendung des ShowReadOnly-Attributs veranschaulicht. In diesem Beispiel wird das OpenFileDialog Feld mit der ShowReadOnly auf " festgelegten Eigenschaft" true
angezeigt. Wenn der Benutzer auf die Option klickt, um die Datei im schreibgeschützten Modus zu öffnen, wird die OpenFile Methode zum Öffnen der Datei verwendet. Andernfalls wird die FileStream Klasse verwendet, um die Datei im Lese-/Schreibmodus zu öffnen.
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 == true )
{
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 == true)
{
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