Fungsi mengkosongkan nilai semua kontrol dalam sebuah form 2


Fungsi ini digunakan untuk mengkosongkan nilai semua kontrol dalam form tersebut. Jika kontrol tersebut adalah kontainer / kontrol yang dapat menampung kontrol lain, maka semua kontrol anak dari kontainer tersebut akan juga akan dikosongkan. Fungsi ini biasanya digunakan untuk membersihkan layar dari segala inputan yang telah dibuat, biasanya saat sebelum data baru ditampilkan, atau pada saat selesai melakukan penyimpanan data.

Module1.vb
Public Sub ClearControl(ByRef container As Control, Optional ByVal recurse As Boolean = True)
	Dim ctrl As Control
	For Each ctrl In container.Controls
		Dim cbo As ComboBoxEdit = TryCast(ctrl, ComboBoxEdit)
		If cbo IsNot Nothing Then
			cbo.SelectedIndex = -1
			GoTo nextFor
		End If

		Dim dtp As DateEdit = TryCast(ctrl, DateEdit)
		If dtp IsNot Nothing Then
			dtp.DateTime = Now
			GoTo nextFor
		End If

		Dim rad As RadioGroup = TryCast(ctrl, RadioGroup)
		If rad IsNot Nothing Then
			rad.SelectedIndex = -1
			GoTo nextFor
		End If

		Dim spi As SpinEdit = TryCast(ctrl, SpinEdit)
		If spi IsNot Nothing Then
			spi.Value = 0
			GoTo nextFor
		End If

		Dim txt As TextEdit = TryCast(ctrl, TextEdit)
		If txt IsNot Nothing Then
			txt.Text = ""
			GoTo nextFor
		End If

		If recurse Then
			Dim grb As GroupControl = TryCast(ctrl, GroupControl)
			If grb IsNot Nothing Then
				ClearControl(grb, recurse)
				GoTo nextFor
			End If

			Dim pnl As PanelControl = TryCast(ctrl, PanelControl)
			If pnl IsNot Nothing Then
				ClearControl(pnl, recurse)
				GoTo nextFor
			End If
		End If
nextFor:
	Next
End Sub



Contoh pemanggilan fungsi adalah sebagai berikut:

Form1.vb
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
	Dim ctl As Control
	For Each ctl In Me.Controls
		SetControlBlankValue(ctl)
	Next
End Sub



Jika terdapat tipe kontrol / kontainer baru yang ingin ditambahkan, maka silahkan menambahkan sendiri script untuk kontrol tersebut.
Selamat mencoba.


Tinggalkan sebuah komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

2 pemikiran di “Fungsi mengkosongkan nilai semua kontrol dalam sebuah form