Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1

    [vb.net] Salvataggio e apertura delle pagina di un tabcontrol

    Ciò che non funziona, che mi restituisce un'eccezione di tipo ArgumentNullExcepion durante l'apertura del file.

    Per il salvataggio:
    codice:
    if savefiledialog1.showdialog=windows.forms.dialogresult.OK then
    system.IO.file.writealltext(savefiledialog1.filename, tabcontrol1.tag)
    end if
    ...per l'apertura...

    codice:
    dim tbc as string
    if openfiledialog1.showdialog=windows.forms.dialogresult.OK then
    tbc = system.IO.file.readalltext(openfiledialog1.filename, tabcontrol1.tag)
    tabcontrol1.tag=tbc
    end if
    RichiFra03

  2. #2
    Hai verificato se TabControl1.Tag è effettivamente diverso da Nothing?
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Sì, nel tabcontrol1.tag ho messo "1". Ho forse sbagliato?
    RichiFra03

  4. #4
    Ma in entrambi i casi l'eccezione viene sollevata sulla System.IO.File.eccetera?
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Dunque, l'eccezione viene generata quì:
    codice:
     Dim tbc As String
            If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
               tbc = System.IO.File.ReadAllText(OpenFileDialog1.FileName, TabControl1.Tag) 
                TabControl1.Tag = tbc
            End If
    RichiFra03

  6. #6
    Nella parte in rosso
    RichiFra03

  7. #7
    Hai verificato con il debugger che entrambi gli argomenti passati a ReadAllText non siano Nothing?
    Amaro C++, il gusto pieno dell'undefined behavior.

  8. #8
    Cosa intendi per "passati"?
    RichiFra03

  9. #9
    Intendi così forse?
    codice:
      Dim tbc As String = 1
            If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
                tbc = System.IO.File.ReadAllText(OpenFileDialog1.FileName, TabControl1.Tag = 1)
                TabControl1.Tag = tbc
            End If
    RichiFra03

  10. #10
    No, intendo dire che, quando si verifica l'errore a runtime, guardi con il debugger se almeno uno tra OpenFileDialog1.FileName e TabControl1.Tag è Nothing.

    Per "passati" intendo... passati al metodo; quando richiami un metodo specificando dei parametri si dice che "passi" i parametri al metodo; tra l'altro, l'ultimo pezzo di codice che hai scritto non ha senso proprio a livello di sintassi.

    Si pone quindi la domanda: tu stai studiando VB.NET su qualche manuale o vai "a caso"?
    Amaro C++, il gusto pieno dell'undefined behavior.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.