Home > Visual C# > Beberapa alternatif mengosongkan TextBox

Beberapa alternatif mengosongkan TextBox

June 30, 2011

Pertanyaan 1 :

Berdasarkan contoh form berikut buatkan perintah untuk mengosongkan semua inputan.

Jawab :

private void btnReset_Click(object sender, EventArgs e)
{
    textBox1.Clear();
    textBox2.Clear();
    textBox3.Clear();
    textBox4.Clear();
    textBox5.Clear();
    textBox6.Clear();
    textBox7.Clear();
    textBox8.Clear();
}

Apakah ada cara yang lain ?

Jawab :

Ada, tambahkan method baru misal dengan nama ResetForm

private void ResetForm(Form frm)
{
    // cek semua objek yg ada di Form
    foreach (object ctl in frm.Controls)
    {
        if (ctl.GetType().Name.Equals("TextBox")) // jika TextBox
        {
            ((TextBox)ctl).Clear(); // kosongkan
        }
    }
}

Kemudian tinggal panggil di event btnReset_Click

private void btnReset_Click(object sender, EventArgs e)
{
    ResetForm(this);
}

Kodenya kelihatan lebih simple bukan dan jika method ResetFormnya kita jadikan method public yang sifatnya static maka bisa dipake untuk semua form.

Pertanyaan 2 :

Terjadi revisi form sebelumnya seperti berikut :

Apakah method diatas masih berfungsi dengan baik ?

Jawab :

Method diatas hanya berhasil mengosongkan TextBox yang ada di luar container GroupBox, jadi method ResetFormnya harus direvisi lagi :

private void ResetForm(Form frm)
{
    // cek semua objek yg ada di form
    foreach (object ctl in frm.Controls)
    {
        if (ctl.GetType().Name.Equals("TextBox")) // jika TextBox
        {
            ((TextBox)ctl).Clear(); // kosongkan
        }
        // tambahan pengecekan container GroupBox
        else if (ctl.GetType().Name.Equals("GroupBox"))
        {
            // cek semua objek yg ada di dalam GroupBox
            foreach (object itm in ((GroupBox)ctl).Controls)
            {
                if (itm.GetType().Name.Equals("TextBox")) // jika TextBox
                {
                    ((TextBox)itm).Clear(); // kosongkan
                }
            }
        }
    }
}

Kasus kedua juga sama jika objek TextBox dimasukkan kedalam container Panel, jadi harus ditambahkan pengecekan objek Panelnya.

Selamat MENCOBA🙂

  1. noshade
    November 15, 2011 at 5:58 am

    hampir sama kek vb6
    yang sering ane pake….biar gampang clear control di form

    private sub kosong (a as form)
    dim c as control
    for each c in a
    select case lcase(typename(c))
    case “textbox”: ctl.text = vbnullstring
    case “combobox” : ctl.text = vbnullstring: ctl.listindex = 0
    case “dtpicker”: ctl.value = date
    case “optionbutton”: ctl.value = false
    case “checkbox” : ctl.value = 0
    case “listview”: ctl.listitem.clear
    end select
    next
    end sub

    • November 15, 2011 at 12:48 pm

      Oke om tq atas sumbangan kodenya🙂

      • NoShade
        November 15, 2011 at 4:43 pm

        setelah di liat lagi kaya nya ane salah ngasi kode itu :))
        variabel control awal nya di deklarasikan dengan c
        pas lagi select case malah manggil var ctl (belo di deklarasikan) harus nya tetep make var c
        sori ya om admin😀

        • November 16, 2011 at 8:49 am

          Iya om sy juga baru nyadar😀

  1. April 16, 2014 at 9:14 am
Comments are closed.
%d bloggers like this: