Windows 양식 크기를 저장합니다
-
03-07-2019 - |
문제
vb.net에서 조각을 개발하고 있습니다. 기본 형식 내에서 대화 상자로 사용할 새로운 양식을 만들고 있습니다. 새 대화 상자가 끝날 때 각 사용자의 크기 설정을 저장하는 방법이 있는지 궁금합니다 (아마도 XML 또는 무언가를 통해 시스템의 파일에 있을까요?)
해결책
설정 파일에 저장하고 'OnClosing'이벤트에서 업데이트 할 수 있습니다.
설정을 설정하려면 프로젝트 속성 -> 설정 -> 유형 System.Drawing.Size의 'DialogSize'와 같은 설정을 만듭니다.
그런 다음 대화 상자 양식 에서이 작업을 수행하십시오.
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
설정을 확인하고 사용하려면 이와 같은 작업을 수행하십시오.
Dim dlg As MyDialogWindow
If My.Settings.DialogSize.IsEmpty Then
dlg = New MyDialogWindow()
Else
dlg = New MyDialogWindow(My.Settings.DialogSize)
End If
dlg.ShowDialog()
다른 팁
하지만 이것은 C#을위한 것입니다., VB.NET도 도움이 될 것입니다.
응용 프로그램 (크기)에 새 설정을 추가하여 다음으로 설정할 수도 있습니다. system.drawing.size
그런 다음 현재 크기를 닫기 설정에 저장해야합니다.
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
그리고로드시 설정에 저장 한 크기를 적용합니다.
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
VB.NET IDE 자체가 제공 한 UI를 사용하여이를 수행 할 수도 있습니다. 양식의 속성 창에서 "(Application Settings)"라는 항목 아래를 살펴보고 "속성 바인딩"을 살펴보십시오. 양식의 거의 모든 속성 (크기 및 위치 포함)을 해당 응용 프로그램의 설정 값에 바인딩 할 수 있습니다.
결과적으로, 나는 이것을 사용하는 방법을 찾았습니다. System.IO.IsolatedStorage
제휴하지 않습니다 StackOverflow