2012-06-19 22 views
7

Al abrir un archivo usando el códigoC# OpenFileDialog

if (ofd.ShowDialog() == DialogResult.OK) 
    text = File.ReadAllText(ofd.FileName, Encoding.Default); 

Una ventana aparecerá y me piden que elija el archivo (el nombre del archivo está en blanco como se puede ver en la imagen)

enter image description here

Si presiono la segunda vez el botón Abrir para abrir un archivo, el Nombre del archivo muestra la ruta del archivo seleccionado anterior (ver en la imagen) ¿Cómo puedo borrar esta ruta cada vez que presiona el botón Abrir?

enter image description here

Respuesta

11

Usted probablemente se está utilizando la misma instancia de un OpenFileDialog cada vez que se pulsa el botón, lo que significa el nombre de archivo anterior aún se guarda en la propiedad FileName. Usted debe borrar la propiedad FileName antes de mostrar el cuadro de diálogo de nuevo:

ofd.FileName = String.Empty; 
if (ofd.ShowDialog() == DialogResult.OK) 
    text = File.ReadAllText(ofd.FileName, Encoding.Default); 
3

es necesario restablecer el nombre del archivo.

openFileDialog1.FileName= ""; 

O

openFileDialog1.FileName= String.Empty() 
1

borrar solo el nombre del archivo (y no la ruta seleccionada), se puede establecer la propiedad FileName a string.Empty.

3

simplemente puede añadir esta línea antes de llamar ShowDialog():

ofd.FileName = String.Empty; 
0
private void button1_Click(object sender, EventArgs e) 
    { 
     openFileDialog1.ShowDialog(); 
    } 

    private void openFileDialog1_FileOk(object sender, CancelEventArgs e) 
    { 
     label1.Text = sender.ToString(); 
    } 

¿Qué hay de éste.

6

probar esto:

ofd.FileName = String.Empty; 
Cuestiones relacionadas