My Html Code
<div class="form-group">
<div class="row">
<div class="col-lg-12">
<div class="panel panel-primary">
<div class="panel-heading">
Ürün Tablosu
</div>
<!-- /.panel-heading -->
<div class="panel-body">
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:GridView ID="example" CssClass="table table-striped table-bordered table-hover" AutoGenerateColumns="false" DataKeyNames="ID" runat="server" ClientIDMode="Static">
<Columns>
<asp:TemplateField HeaderText="Ürün Seç" ItemStyle-Width="10%">
<ItemTemplate>
<asp:CheckBox ID="chcsec" CssClass="form-control" runat="server" AutoPostBack="true" OnCheckedChanged="chcsec_CheckedChanged" />
</ItemTemplate>
</asp:TemplateField>
<%-- <asp:TemplateField HeaderText="Ürün ID" ItemStyle-Width="100">
<ItemTemplate>
<asp:HiddenField ID="hdID" runat="server" Text='<%# Eval("ID") %>'/>
<asp:HiddenField ID="hdID" runat="server" Value='<%# Eval("ID") %>' />
</ItemTemplate>
</asp:TemplateField>--%>
<asp:TemplateField HeaderText="Ürün Ad" ItemStyle-Width="20%">
<ItemTemplate>
<asp:Label ID="lblUrun" runat="server" Text='<%# Eval("UrunAd") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txturunad" runat="server" Text='<%# Eval("UrunAd") %>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Stok" ItemStyle-Width="10%">
<ItemTemplate>
<asp:Label ID="lblStok" Style="padding: 3px 5px;" runat="server" Text='<%# Eval("Stok") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtstok" Style="padding: 3px 5px;" runat="server" Text='<%# Eval("Stok") %>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<%-- <asp:TemplateField HeaderText="Fiyat" ItemStyle-Width="50">
<ItemTemplate>
<asp:TextBox ID="txtfiyat" Style="padding: 3px 5px; width: 100%" CssClass="form-control" runat="server"></asp:TextBox>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtfiyat" Style="padding: 3px 5px; width: 100%" runat="server" CssClass="form-control"></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>--%>
<%-- <asp:TemplateField HeaderText="Adet" ItemStyle-Width="50">
<ItemTemplate>
<asp:TextBox ID="txtAdet" Style="padding: 3px 5px; width: 100%" CssClass="form-control" runat="server"></asp:TextBox>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtAdet" runat="server" Style="padding: 3px 5px; width: 100%" CssClass="form-control"></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>--%>
<%-- <asp:TemplateField HeaderText="Eleman Seç" ItemStyle-Width="100">
<ItemTemplate>
<asp:DropDownList ID="drpEleman" CssClass="form-control" runat="server"></asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>--%>
<%-- <asp:TemplateField HeaderText="Eleman Adet" ItemStyle-Width="50">
<ItemTemplate>
<asp:TextBox ID="txtElemanAdet" Style="padding: 3px 5px; width: 100%" CssClass="form-control" runat="server"></asp:TextBox>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtElemanAdet" runat="server" Style="padding: 3px 5px; width: 100%" CssClass="form-control"></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>--%>
<%-- <asp:TemplateField HeaderText="Eleman Fiyat" ItemStyle-Width="50">
<ItemTemplate>
<asp:TextBox ID="txtElemanFiyat" Style="padding: 3px 5px; width: 100%" CssClass="form-control" runat="server"></asp:TextBox>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtElemanFiyat" runat="server" Style="padding: 3px 5px; width: 100%" CssClass="form-control"></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>--%>
<%-- <asp:CommandField ButtonType="Link" ShowEditButton="true" ShowDeleteButton="true" ItemStyle-Width="150" />--%>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<!-- /.panel-body -->
</div>
<!-- /.panel -->
</div>
<!-- /.col-lg-12 -->
</div>
<%-- <asp:Button ID="addRow" runat="server" Text="Yeni Satır" />--%>
<br />
<div class="row">
<div class="col-lg-12">
<div class="panel panel-info">
<div class="panel-heading">
Sipariş Tablosu
</div>
<!-- /.panel-heading -->
<div class="panel-body">
<asp:GridView ID="gvSiparis" CssClass="table table-striped table-bordered table-hover" runat="server" AutoGenerateColumns="false" OnRowDeleting="gvSiparis_RowDeleting" OnRowDataBound="gvSiparis_RowDataBound" OnPreRender="gvSiparis_PreRender">
<Columns>
<asp:TemplateField HeaderText="Ürün Ad" ItemStyle-Width="20%">
<ItemTemplate>
<asp:Label ID="lblUrun" runat="server" Text='<%# Eval("UrunAd") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txturunad" runat="server" Text='<%# Eval("UrunAd") %>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Stok" ItemStyle-Width="20%">
<ItemTemplate>
<asp:Label ID="lblStok" Style="padding: 3px 5px;" runat="server" Text='<%# Eval("Stok") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtstok" Style="padding: 3px 5px;" runat="server" Text='<%# Eval("Stok") %>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<%-- <asp:TemplateField HeaderText="Fiyat" ItemStyle-Width="50">
<ItemTemplate>
<asp:TextBox ID="txtfiyat" Style="padding: 3px 5px; width: 100%" CssClass="form-control" runat="server"></asp:TextBox>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtfiyat" Style="padding: 3px 5px; width: 100%" runat="server" CssClass="form-control"></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Adet" ItemStyle-Width="50">
<ItemTemplate>
<asp:TextBox ID="txtAdet" Style="padding: 3px 5px; width: 100%" CssClass="form-control" runat="server"></asp:TextBox>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtAdet" runat="server" Style="padding: 3px 5px; width: 100%" CssClass="form-control"></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Eleman Seç" ItemStyle-Width="100">
<ItemTemplate>
<asp:DropDownList ID="drpEleman" CssClass="form-control" runat="server"></asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Eleman Adet" ItemStyle-Width="50">
<ItemTemplate>
<asp:TextBox ID="txtElemanAdet" Style="padding: 3px 5px; width: 100%" CssClass="form-control" runat="server"></asp:TextBox>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtElemanAdet" runat="server" Style="padding: 3px 5px; width: 100%" CssClass="form-control"></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Eleman Fiyat" ItemStyle-Width="50">
<ItemTemplate>
<asp:TextBox ID="txtElemanFiyat" Style="padding: 3px 5px; width: 100%" CssClass="form-control" runat="server"></asp:TextBox>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtElemanFiyat" runat="server" Style="padding: 3px 5px; width: 100%" CssClass="form-control"></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>--%>
<asp:CommandField ButtonType="Link" ShowEditButton="false" ShowDeleteButton="true" ItemStyle-Width="20%" />
</Columns>
</asp:GridView>
</div>
<!-- /.panel-body -->
</div>
<!-- /.panel -->
</div>
<!-- /.col-lg-12 -->
</div>
<%-- <asp:Button ID="btnTopla" CssClass="btn btn-danger pull-right" runat="server" Text="Topla" />--%>
</div>
Code Behind
protected void chcsec_CheckedChanged(object sender, EventArgs e)
{
if ((sender as CheckBox).Checked)
{
if (ViewState["CheckedRow"] == null)
{
DataTable dt = CheckedData();
ViewState["CheckedRow"] = dt;
}
else
{
DataTable previousCheckedRows = ViewState["CheckedRow"] as DataTable;
DataTable dtCurrentCheckedRows = CheckedData();
dtCurrentCheckedRows.Merge(previousCheckedRows);
ViewState["CheckedRow"] = dtCurrentCheckedRows;
}
}
else
{
GridViewRow row = ((sender as CheckBox).NamingContainer as GridViewRow);
Label lblUrun = (row.FindControl("lblUrun") as Label);
Label lblStok = (row.FindControl("lblStok") as Label);
DataTable deleteRow = (ViewState["CheckedRow"] as DataTable).DefaultView.ToTable(true);
DataRow[] dr = deleteRow.Select("UrunAd = '" + lblUrun.Text + "' AND Stok = '" + lblStok.Text + "'");
foreach (DataRow d in dr)
{
deleteRow.Rows.Remove(d);
}
ViewState["CheckedRow"] = deleteRow;
}
gvSiparis.DataSource = (ViewState["CheckedRow"] as DataTable).DefaultView.ToTable(true);
gvSiparis.DataBind();
}
private DataTable CheckedData()
{
DataTable dt = new DataTable();
dt.Columns.AddRange(new DataColumn[] { new DataColumn("UrunAd"), new DataColumn("Stok", typeof(int)) });
foreach (GridViewRow rw in example.Rows)
{
if (rw.RowType == DataControlRowType.DataRow)
{
CheckBox chk = (CheckBox)rw.Cells[0].FindControl("chcsec");
if (chk.Checked)
{
//HiddenField hdID = (HiddenField)rw.Cells[0].FindControl("hdID");
Label lb = (Label)rw.Cells[1].FindControl("lblUrun");
Label lb1 = (Label)rw.Cells[2].FindControl("lblStok");
//TextBox fiyat = (TextBox)rw.Cells[3].FindControl("txtfiyat");
//TextBox adet = (TextBox)rw.Cells[4].FindControl("txtAdet");
//DropDownList drp = (DropDownList)rw.Cells[3].FindControl("drpEleman");
//TextBox elemanadet = (TextBox)rw.Cells[6].FindControl("txtElemanAdet");
//TextBox elemanfiyat = (TextBox)rw.Cells[7].FindControl("txtElemanFiyat");
int stok = Convert.ToInt32(lb1.Text);
//int adets = Convert.ToInt32(adet.Text);
//if (stok < adets)
//{
// chk.Checked = false;
// Response.Write("<script LANGUAGE='JavaScript' >alert('Stok Yok...')</script>");
// break;
//}
//dt.Rows.Add(lb.Text, lb1.Text,fiyat.Text,adet.Text, drp.SelectedItem.Text,elemanadet.Text,elemanfiyat.Text);
dt.Rows.Add(lb.Text, lb1.Text);
chk.Checked = false;
}
}
}
return dt;
}