Jumat, 15 Maret 2013

Cara Membuat Radiobutton pada web dengan C#

Radiobutton digunakan apabila ada beberapa pilihan namun pengguna hanya dapat memilih 1 pilihan. Untuk dapat membuat radiobutton pada web dengan membuat desainya dalam tabel maka code yang digunakan adalah seperti yang dicontohkan pada code dibawah ini.
 <asp:GridView ID="dgvJumlah" runat="server" 
                AutoGenerateColumns="False" CellPadding="4"
                ForeColor="Black" GridLines="Vertical"  Width="288px" 
                BackColor="White" 
                BorderColor="#DEDFDE" BorderStyle="None" BorderWidth="1px" 
                EnableModelValidation="True"  >
                <FooterStyle BackColor="#CCCC99" />
                <Columns>
                    <asp:TemplateField>
                        <ItemTemplate>
                        <asp:RadioButton ID="rbJumlah" runat="server" AutoPostBack="true"   OnCheckedChanged="rbJumlah_CheckedChanged"/>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:BoundField DataField="kriteria" HeaderText="Kriteria" />
                </Columns>
                <RowStyle BackColor="#F7F7DE" />
                <SelectedRowStyle BackColor="#CE5D5A" Font-Bold="True" ForeColor="White" />
                <PagerStyle BackColor="#F7F7DE" ForeColor="Black" HorizontalAlign="Right" />
                <HeaderStyle BackColor="#6B696B" Font-Bold="True" ForeColor="White" />
                <AlternatingRowStyle BackColor="White" />
            </asp:GridView>

Dalam desain tabel dinamakan dgvJumlah. Dalam tabel terdiri dari kolom untuk radiobutton dan kriteria. untuk memilih kriteria menggunakan radio button maka code yang diperlukan pada class (*.aspx.cs) adalah seperti dibawah ini :

protected void rbJumlah_CheckedChanged(object sender, EventArgs e)
    {
        RadioButton rbJumlah = sender as RadioButton;
        GridViewRow parentRow = rbJumlah.NamingContainer as GridViewRow;
        string strName = rbJumlah.Text;
        foreach (GridViewRow row in dgvJumlah.Rows)
        {
            RadioButton rb = row.FindControl("rbJumlah") as RadioButton;
            if (rb != rbJumlah)
                rb.Checked = false;
        }


    }

Untuk memberikan nilai pada kriteria yang dipilih maka menggunakan kode dibawah ini :

  foreach (GridViewRow row in dgvJumlah.Rows)
            {
                RadioButton cb = row.FindControl("rbJumlah") as RadioButton;
                if (cb.Checked)
                {
                    n = new Nilai(lblKode.Text, k.getKodeByJenisKriteria("Jumlah Kelompok", dgvJumlah.Rows[row.RowIndex].Cells[1].Text), 5);
                    n.insertNilai();
                    dgvJumlah.Visible = false;
                }
            }

Dengan demikian jika kriteria yang dipilih dengan radiobutton memiliki nilai 5.

Semoga membantu......^^

Tidak ada komentar:

Posting Komentar