Domanda

Sto sviluppando un pezzo in VB.NET. All'interno del mio modulo principale, sto creando un nuovo modulo da utilizzare come finestra di dialogo. Mi chiedevo se alla chiusura della nuova finestra di dialogo ci fosse un modo per salvare le impostazioni delle dimensioni per ciascun utente (probabilmente in un file sulla propria macchina, tramite XML o qualcosa del genere?)

È stato utile?

Soluzione

puoi salvarlo nel file delle impostazioni e aggiornarlo nell'evento 'onclosing'.

per fare un'impostazione vai a Proprietà progetto - > settings - > quindi fai un'impostazione come 'dialogsize' di tipo system.drawing.size.

quindi esegui questa operazione nel tuo modulo di dialogo:

Public Sub New()
    InitializeComponent()
End Sub

Public Sub New(ByVal userSize As Size)
    InitializeComponent()
    Me.Size = userSize
End Sub

Protected Overrides Sub OnClosing(ByVal e As System.ComponentModel.CancelEventArgs)
    MyBase.OnClosing(e)
    My.Settings.DialogSize = Me.Size
    My.Settings.Save()
End Sub

fai qualcosa del genere per verificare e utilizzare l'impostazione:

    Dim dlg As MyDialogWindow
    If My.Settings.DialogSize.IsEmpty Then
        dlg = New MyDialogWindow()
    Else
        dlg = New MyDialogWindow(My.Settings.DialogSize)
    End If
    dlg.ShowDialog()

Altri suggerimenti

Sebbene questo è per C # , aiuterà anche con VB.Net.

Puoi anche aggiungere una nuova impostazione alla tua applicazione (dimensione) e impostarla su system.drawing.size

Quindi, assicurati di salvare la dimensione corrente nelle impostazioni alla chiusura.

    Private Sub myForm_FormClosing(ByVal sender As System.Object,
                          ByVal e As System.Windows.Forms.FormClosingEventArgs) _
                             Handles MyBase.FormClosing

    My.Settings.size = Me.Size
    My.Settings.Save()

End Sub

e al caricamento si applica la dimensione salvata nelle impostazioni

    Private Sub myForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) _
    Handles MyBase.Load
    ' if  this is the first  time to load the form 
    ' dont set the size ( the form will load  with the size  in the designe)
    If Not My.Settings.size.IsEmpty Then
        Me.Size = My.Settings.size
    End If
End Sub

Puoi anche farlo usando l'interfaccia utente fornita dall'IDE VB.NET stesso. Nel riquadro delle proprietà di un modulo, cerca sotto l'elemento chiamato " (Impostazioni applicazione) " e quindi sotto "Rilegatura proprietà". È possibile associare praticamente tutte le proprietà del modulo (incluse dimensioni e posizione) a un valore delle impostazioni per quell'applicazione.

A quanto pare, ho trovato un modo per farlo usando System.IO.IsolatedStorage

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top