Show Temporary Data in RadGrid
Show Temporary Data in RadGrid
Write below code in aspx page
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<telerik:RadGrid ID="RadGrid1" runat="server" Width="70%" ShowFooter="True" MasterTableView-NoDetailRecordsText="" MasterTableView-NoMasterRecordsText="" AutoGenerateColumns="false" ShowHeader="False" OnItemCommand="RadGrid1_ItemCommand">
<MasterTableView NoDetailRecordsText="" NoMasterRecordsText="">
<Columns>
<telerik:GridTemplateColumn Display="false">
<ItemTemplate>
<telerik:RadLabel ID="lblid" runat="server" Text='<%# Bind("Level_Id") %>'></telerik:RadLabel>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn>
<ItemTemplate>
<telerik:RadLabel ID="lbllevel1" runat="server" Text='<%# Bind("LevelName") %>'></telerik:RadLabel>
</ItemTemplate>
<FooterTemplate>
<telerik:RadTextBox ID="txtlevel2" runat="server" MaxLength="10"></telerik:RadTextBox>
</FooterTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn>
<FooterTemplate>
<telerik:RadButton ID="btnadd" CommandName="add_level" runat="server" Text="+add" CausesValidation="false" ValidationGroup="level"></telerik:RadButton>
</FooterTemplate>
</telerik:GridTemplateColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
</div>
Write the below code in aspx.cs page
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Telerik.Web.UI;
namespace Cascading_Dropdown_
{
public partial class RadGrid : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
table();
}
}
protected void table()
{
DataTable dt = new DataTable();
dt.Columns.Add("Level_Id", typeof(string));
dt.Columns.Add("LevelName", typeof(string));
Session["dt"] = dt;
BindGrid();
}
protected void BindGrid()
{
DataTable dt = (Session["dt"]) as DataTable;
List<MyType> list = new List<MyType>();
var lst = (from DataRow dr in dt.Rows
select new MyType()
{
Level_Id = dr["Level_Id"].ToString(),
LevelName=dr["LevelName"].ToString()
}).ToList();
Session["d"] = lst;
RadGrid1.DataSource = Session["d"];
RadGrid1.DataBind();
}
protected void RadGrid1_ItemCommand(object sender,Telerik.Web.UI.GridCommandEventArgs e)
{
if(e.CommandName=="add_level")
{
GridFooterItem footeritem=(GridFooterItem)e.Item;
if(((RadTextBox)footeritem.FindControl("txtlevel2")).Text!="")
{
DataTable dt = (Session["dt"] as DataTable);
DataRow dr = dt.NewRow();
dr["Level_Id"] = "";
dr["LevelName"] = ((RadTextBox)footeritem.FindControl("txtlevel2")).Text;
dt.Rows.Add(dr);
Session["dt"] = dt;
BindGrid();
}
else
{
}
}
}
}
}
Add a webform (.cs file) and write the below code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace Cascading_Dropdown_
{
public class MyType
{
public string LevelName { get; set; }
public string Level_Id { get; set; }
}
}
Output

Comments
Post a Comment