or
<
telerik:GridTemplateColumn
SortExpression
=
"score"
HeaderText
=
"score"
HeaderButtonType
=
"TextButton"
DataField
=
"score"
UniqueName
=
"score"
ReadOnly
=
"true"
>
<
ItemTemplate
>
<
telerik:RadTextBox
runat
=
"server"
>
</
telerik:RadTextBox
>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
0x800a139e - Microsoft JScript runtime error: Sys.WebForms.PageRequestManagerServerErrorException: Collection was modified; enumeration operation may not execute.
If there is a handler for this exception, the program may be safely continued.
<%@ Page Title="" Language="VB" MasterPageFile="~/MasterPage.master" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="Applications_Default" %>
<
asp:Content
ID
=
"Content1"
ContentPlaceHolderID
=
"head"
runat
=
"Server"
>
</
asp:Content
>
<
asp:Content
ID
=
"Content2"
ContentPlaceHolderID
=
"MainContent"
runat
=
"Server"
>
<
telerik:RadScriptBlock
ID
=
"RSBlock1"
runat
=
"server"
>
<
script
type
=
"text/javascript"
>
function ShowAddRoleWindow(sender, args) {
$find("<%=AddUserRoleRW.ClientID%>").show();
}
function ShowAddUserWindow(sender, args) {
$find("<%=AddRoleUserRW.ClientID%>").show();
}
</
script
>
</
telerik:RadScriptBlock
>
<
telerik:RadAjaxManager
ID
=
"uxAjaxManager"
runat
=
"server"
>
<
AjaxSettings
>
<
telerik:AjaxSetting
AjaxControlID
=
"uxAppSelectCB"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"uxUserRG"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"uxRolesRG"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
<
telerik:AjaxSetting
AjaxControlID
=
"uxUserRG"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"UserAvailRoles"
LoadingPanelID
=
"UserAvailRolesLW"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"AddUserRoleUN"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
<
telerik:AjaxSetting
AjaxControlID
=
"uxRolesRG"
>
<
UpdatedControls
>
<
telerik:AjaxUpdatedControl
ControlID
=
"RoleAvailUsers"
LoadingPanelID
=
"RoleAvailUsersLW"
/>
<
telerik:AjaxUpdatedControl
ControlID
=
"AddRoleUserUN"
/>
</
UpdatedControls
>
</
telerik:AjaxSetting
>
</
AjaxSettings
>
</
telerik:RadAjaxManager
>
<
asp:Label
ID
=
"AddUserRoleUN"
runat
=
"server"
Visible
=
"false"
/>
<
asp:Label
ID
=
"AddRoleUserUN"
runat
=
"server"
Visible
=
"false"
/>
<
telerik:RadComboBox
ID
=
"uxAppSelectCB"
AllowCustomText
=
"true"
runat
=
"server"
DataSourceID
=
"AppListODS"
DataValueField
=
"ApplicationId"
DataTextField
=
"ApplicationName"
MarkFirstMatch
=
"true"
AutoPostBack
=
"true"
/>
<
telerik:RadWindow
ID
=
"AddUserRoleRW"
runat
=
"server"
>
<
ContentTemplate
>
<
telerik:RadAjaxLoadingPanel
ID
=
"UserAvailRolesLW"
runat
=
"server"
/>
<
telerik:RadGrid
ID
=
"UserAvailRoles"
runat
=
"server"
DataSourceID
=
"UserRolesUnassignedODS"
AutoGenerateColumns
=
"false"
AllowAutomaticUpdates
=
"true"
AllowAutomaticInserts
=
"false"
>
<
MasterTableView
EditMode
=
"Batch"
DataKeyNames
=
"RoleId"
CommandItemDisplay
=
"Top"
AllowPaging
=
"true"
PageSize
=
"40"
>
<
BatchEditingSettings
OpenEditingEvent
=
"MouseOver"
/>
<
CommandItemSettings
ShowAddNewRecordButton
=
"false"
ShowRefreshButton
=
"false"
/>
<
Columns
>
<
telerik:GridCheckBoxColumn
UniqueName
=
"GrantCB"
HeaderStyle-Width
=
"30px"
DataField
=
"IsSelected"
/>
<
telerik:GridBoundColumn
DataField
=
"RoleName"
HeaderText
=
"Role"
ReadOnly
=
"true"
/>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
</
ContentTemplate
>
</
telerik:RadWindow
>
<
telerik:RadWindow
ID
=
"AddRoleUserRW"
runat
=
"server"
>
<
ContentTemplate
>
<
telerik:RadAjaxLoadingPanel
ID
=
"RoleAvailUsersLW"
runat
=
"server"
/>
<
telerik:RadGrid
ID
=
"RoleAvailUsers"
runat
=
"server"
DataSourceID
=
"RoleUsersUnassignedODS"
AutoGenerateColumns
=
"false"
AllowAutomaticUpdates
=
"true"
AllowAutomaticInserts
=
"false"
>
<
MasterTableView
EditMode
=
"Batch"
DataKeyNames
=
"UserId"
CommandItemDisplay
=
"Top"
AllowPaging
=
"true"
PageSize
=
"40"
>
<
BatchEditingSettings
OpenEditingEvent
=
"MouseOver"
/>
<
CommandItemSettings
ShowAddNewRecordButton
=
"false"
ShowRefreshButton
=
"false"
/>
<
Columns
>
<
telerik:GridCheckBoxColumn
UniqueName
=
"AddCB"
HeaderStyle-Width
=
"30px"
DataField
=
"IsSelected"
/>
<
telerik:GridBoundColumn
DataField
=
"FirstName"
HeaderText
=
"First Name"
ReadOnly
=
"true"
/>
<
telerik:GridBoundColumn
DataField
=
"LastName"
HeaderText
=
"Last Name"
ReadOnly
=
"true"
/>
<
telerik:GridBoundColumn
DataField
=
"UserName"
HeaderText
=
"User Name"
ReadOnly
=
"true"
/>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
</
ContentTemplate
>
</
telerik:RadWindow
>
<
telerik:RadTabStrip
runat
=
"server"
ID
=
"uxAdminModeStrip"
Orientation
=
"HorizontalTop"
SelectedIndex
=
"0"
MultiPageID
=
"uxAdminModeMP"
>
<
Tabs
>
<
telerik:RadTab
Text
=
"Manage By User"
TabIndex
=
"0"
/>
<
telerik:RadTab
Text
=
"Manage By Role"
TabIndex
=
"1"
/>
</
Tabs
>
</
telerik:RadTabStrip
>
<
telerik:RadMultiPage
runat
=
"server"
ID
=
"uxAdminModeMP"
SelectedIndex
=
"0"
Width
=
"100%"
>
<%--Page: By User--%>
<
telerik:RadPageView
runat
=
"server"
ID
=
"uxByUserPV"
TabIndex
=
"0"
>
<
telerik:RadGrid
ID
=
"uxUserRG"
runat
=
"server"
DataSourceID
=
"UserListODS"
AutoGenerateColumns
=
"false"
>
<
MasterTableView
DataKeyNames
=
"UserId"
AllowFilteringByColumn
=
"true"
AllowSorting
=
"true"
>
<
DetailTables
>
<
telerik:GridTableView
DataKeyNames
=
"RoleId"
Name
=
"uxUserRolesRG"
AutoGenerateColumns
=
"false"
runat
=
"server"
DataSourceID
=
"UserRolesODS"
AllowAutomaticDeletes
=
"true"
CommandItemDisplay
=
"Top"
>
<
CommandItemTemplate
>
<
telerik:RadButton
ID
=
"AddUserRoleRB"
runat
=
"server"
CommandName
=
"AddRoles"
OnClientClicked
=
"ShowAddRoleWindow"
AutoPostBack
=
"true"
Text
=
"Add Roles"
ButtonType
=
"SkinnedButton"
/>
</
CommandItemTemplate
>
<
CommandItemSettings
ShowAddNewRecordButton
=
"false"
/>
<
ParentTableRelation
>
<
telerik:GridRelationFields
DetailKeyField
=
"UserId"
MasterKeyField
=
"UserId"
/>
</
ParentTableRelation
>
<
Columns
>
<
telerik:GridBoundColumn
DataField
=
"RoleName"
HeaderText
=
"Role Name"
ReadOnly
=
"true"
/>
<
telerik:GridBoundColumn
DataField
=
"Description"
HeaderText
=
"Description"
ReadOnly
=
"true"
/>
<
telerik:GridButtonColumn
CommandName
=
"Delete"
HeaderText
=
"Remove"
ButtonType
=
"PushButton"
Text
=
"X"
/>
</
Columns
>
</
telerik:GridTableView
>
</
DetailTables
>
<
Columns
>
<
telerik:GridBoundColumn
DataField
=
"UserName"
HeaderText
=
"User Name"
CurrentFilterFunction
=
"Contains"
AutoPostBackOnFilter
=
"true"
/>
<
telerik:GridBoundColumn
DataField
=
"FirstName"
HeaderText
=
"First Name"
CurrentFilterFunction
=
"Contains"
AutoPostBackOnFilter
=
"true"
/>
<
telerik:GridBoundColumn
DataField
=
"LastName"
HeaderText
=
"Last Name"
CurrentFilterFunction
=
"Contains"
AutoPostBackOnFilter
=
"true"
/>
<
telerik:GridCheckBoxColumn
DataField
=
"IsLockedOut"
HeaderText
=
"Locked"
AllowFiltering
=
"false"
/>
<
telerik:GridCheckBoxColumn
DataField
=
"IsArchive"
HeaderText
=
"Archived"
AllowFiltering
=
"false"
/>
<
telerik:GridDateTimeColumn
DataField
=
"LastActivityDate"
HeaderText
=
"Last Active"
DataFormatString
=
"{0:dd/MM/yyyy}"
CurrentFilterFunction
=
"GreaterThanOrEqualTo"
AutoPostBackOnFilter
=
"true"
/>
</
Columns
>
</
MasterTableView
>
<
GroupingSettings
CaseSensitive
=
"false"
/>
</
telerik:RadGrid
>
</
telerik:RadPageView
>
<%--Page: By Role--%>
<
telerik:RadPageView
runat
=
"server"
ID
=
"uxByRolePV"
TabIndex
=
"1"
>
<
telerik:RadGrid
ID
=
"uxRolesRG"
runat
=
"server"
DataSourceID
=
"RoleListODS"
AutoGenerateColumns
=
"false"
>
<
MasterTableView
DataKeyNames
=
"RoleId"
AllowFilteringByColumn
=
"true"
AllowSorting
=
"true"
>
<
DetailTables
>
<
telerik:GridTableView
DataKeyNames
=
"UserId"
Name
=
"uxRoleUsersRG"
AutoGenerateColumns
=
"false"
runat
=
"server"
DataSourceID
=
"RoleUsersODS"
AllowAutomaticDeletes
=
"true"
CommandItemDisplay
=
"top"
>
<
CommandItemTemplate
>
<
telerik:RadButton
ID
=
"AddRoleUserRB"
runat
=
"server"
CommandName
=
"AddUsers"
OnClientClicked
=
"ShowAddUserWindow"
AutoPostBack
=
"true"
Text
=
"Add Users"
ButtonType
=
"SkinnedButton"
/>
</
CommandItemTemplate
>
<
CommandItemSettings
ShowAddNewRecordButton
=
"false"
/>
<
ParentTableRelation
>
<
telerik:GridRelationFields
DetailKeyField
=
"RoleId"
MasterKeyField
=
"RoleId"
/>
</
ParentTableRelation
>
<
Columns
>
<
telerik:GridBoundColumn
DataField
=
"UserName"
HeaderText
=
"User Name"
/>
<
telerik:GridBoundColumn
DataField
=
"FirstName"
HeaderText
=
"First Name"
/>
<
telerik:GridBoundColumn
DataField
=
"LastName"
HeaderText
=
"Last Name"
/>
<
telerik:GridCheckBoxColumn
DataField
=
"IsLockedOut"
HeaderText
=
"Locked"
/>
<
telerik:GridCheckBoxColumn
DataField
=
"IsArchive"
HeaderText
=
"Archived"
/>
<
telerik:GridDateTimeColumn
DataField
=
"LastActivityDate"
HeaderText
=
"Last Active"
DataFormatString
=
"{0:dd/MM/yyyy}"
/>
<
telerik:GridButtonColumn
CommandName
=
"Delete"
HeaderText
=
"Remove"
ButtonType
=
"PushButton"
Text
=
"X"
/>
</
Columns
>
</
telerik:GridTableView
>
</
DetailTables
>
<
Columns
>
<
telerik:GridBoundColumn
DataField
=
"RoleName"
HeaderText
=
"Role Name"
CurrentFilterFunction
=
"Contains"
AutoPostBackOnFilter
=
"true"
/>
<
telerik:GridBoundColumn
DataField
=
"Description"
HeaderText
=
"Description"
CurrentFilterFunction
=
"Contains"
AutoPostBackOnFilter
=
"true"
/>
<
telerik:GridCheckBoxColumn
DataField
=
"IsActive"
HeaderText
=
"Active"
AllowFiltering
=
"false"
/>
<
telerik:GridCheckBoxColumn
DataField
=
"IsLocked"
HeaderText
=
"Locked"
AllowFiltering
=
"false"
/>
<
telerik:GridDateTimeColumn
DataField
=
"CreateDate"
HeaderText
=
"Created"
DataFormatString
=
"{0:dd/MM/yyyy}"
CurrentFilterFunction
=
"GreaterThanOrEqualTo"
AutoPostBackOnFilter
=
"true"
/>
<
telerik:GridDateTimeColumn
DataField
=
"ModifyDate"
HeaderText
=
"Modified"
DataFormatString
=
"{0:dd/MM/yyyy}"
CurrentFilterFunction
=
"GreaterThanOrEqualTo"
AutoPostBackOnFilter
=
"true"
/>
</
Columns
>
</
MasterTableView
>
<
GroupingSettings
CaseSensitive
=
"false"
/>
</
telerik:RadGrid
>
</
telerik:RadPageView
>
</
telerik:RadMultiPage
>
<%--ODS For Dropdown--%>
<
asp:ObjectDataSource
ID
=
"AppListODS"
runat
=
"server"
TypeName
=
"Applications"
SelectMethod
=
"GetApplicationsWithAccessRights"
/>
<%--ODS For Base Grids--%>
<
asp:ObjectDataSource
ID
=
"UserListODS"
runat
=
"server"
TypeName
=
"Applications"
SelectMethod
=
"GetApplicationUsers"
>
<
SelectParameters
>
<
asp:ControlParameter
ControlID
=
"uxAppSelectCB"
Name
=
"ApplicationId"
/>
</
SelectParameters
>
</
asp:ObjectDataSource
>
<
asp:ObjectDataSource
ID
=
"RoleListODS"
runat
=
"server"
TypeName
=
"Applications"
SelectMethod
=
"GetApplicationRoles"
>
<
SelectParameters
>
<
asp:ControlParameter
ControlID
=
"uxAppSelectCB"
Name
=
"ApplicationId"
/>
</
SelectParameters
>
</
asp:ObjectDataSource
>
<%--ODS For Detail Tables--%>
<
asp:ObjectDataSource
ID
=
"UserRolesODS"
runat
=
"server"
TypeName
=
"Applications"
SelectMethod
=
"GetUserApplicationRoles"
DeleteMethod
=
"DeleteUserRole"
>
<
SelectParameters
>
<
asp:ControlParameter
ControlID
=
"uxAppSelectCB"
Name
=
"ApplicationId"
/>
<
asp:Parameter
Name
=
"UserId"
/>
</
SelectParameters
>
<
DeleteParameters
>
<
asp:Parameter
Name
=
"UserId"
/>
<
asp:Parameter
Name
=
"RoleId"
/>
</
DeleteParameters
>
</
asp:ObjectDataSource
>
<
asp:ObjectDataSource
ID
=
"RoleUsersODS"
runat
=
"server"
TypeName
=
"Applications"
SelectMethod
=
"GetUsersWithRole"
DeleteMethod
=
"DeleteRoleUser"
>
<
SelectParameters
>
<
asp:Parameter
Name
=
"RoleId"
/>
</
SelectParameters
>
<
DeleteParameters
>
<
asp:Parameter
Name
=
"UserId"
/>
<
asp:Parameter
Name
=
"RoleId"
/>
</
DeleteParameters
>
</
asp:ObjectDataSource
>
<%--ODS For Add Window--%>
<
asp:ObjectDataSource
ID
=
"UserRolesUnassignedODS"
runat
=
"server"
TypeName
=
"Applications"
SelectMethod
=
"GetUserUngrantedRoles"
UpdateMethod
=
"BatchInsertUserRole"
>
<
SelectParameters
>
<
asp:ControlParameter
ControlID
=
"uxAppSelectCB"
Name
=
"ApplicationId"
/>
<
asp:Parameter
Name
=
"UserId"
/>
</
SelectParameters
>
<
UpdateParameters
>
<
asp:ControlParameter
ControlID
=
"AddUserRoleUN"
Name
=
"UserId"
/>
</
UpdateParameters
>
</
asp:ObjectDataSource
>
<
asp:ObjectDataSource
ID
=
"RoleUsersUnassignedODS"
runat
=
"server"
TypeName
=
"Applications"
SelectMethod
=
"GetRoleUngrantedUsers"
UpdateMethod
=
"BatchInsertRoleUser"
>
<
SelectParameters
>
<
asp:Parameter
Name
=
"RoleId"
/>
</
SelectParameters
>
<
UpdateParameters
>
<
asp:ControlParameter
ControlID
=
"AddRoleUserUN"
Name
=
"RoleId"
/>
</
UpdateParameters
>
</
asp:ObjectDataSource
>
</
asp:Content
>
Imports
Telerik.Web.UI
Partial
Class
Applications_Default
Inherits
System.Web.UI.Page
Protected
Sub
Page_Init(sender
As
Object
, e
As
EventArgs)
Handles
Me
.Init
If
Not
Page.IsPostBack
Then
uxAppSelectCB.SelectedIndex = 0
uxRolesRG.Rebind()
uxUserRG.Rebind()
End
If
End
Sub
Protected
Sub
uxUserRG_ItemCommand(sender
As
Object
, e
As
GridCommandEventArgs)
Handles
uxUserRG.ItemCommand
If
e.Item.OwnerTableView.DataSourceID.Equals(
"UserRolesODS"
)
Then
Dim
UserId = e.Item.OwnerTableView.ParentItem.GetDataKeyValue(
"UserId"
).ToString()
If
e.CommandName.Equals(
"Delete"
)
Then
UserRolesODS.DeleteParameters(
"UserId"
).DefaultValue = UserId
ElseIf
e.CommandName.Equals(
"AddRoles"
)
Then
UserRolesUnassignedODS.SelectParameters(
"UserId"
).DefaultValue = UserId
AddUserRoleUN.Text = UserId
UserAvailRoles.Rebind()
End
If
End
If
End
Sub
Protected
Sub
uxRolesRG_ItemCommand(sender
As
Object
, e
As
GridCommandEventArgs)
Handles
uxRolesRG.ItemCommand
If
e.Item.OwnerTableView.DataSourceID.Equals(
"RoleUsersODS"
)
Then
Dim
RoleId = e.Item.OwnerTableView.ParentItem.GetDataKeyValue(
"RoleId"
).ToString()
If
e.CommandName.Equals(
"Delete"
)
Then
RoleUsersODS.DeleteParameters(
"RoleId"
).DefaultValue = RoleId
ElseIf
e.CommandName.Equals(
"AddUsers"
)
Then
RoleUsersUnassignedODS.SelectParameters(
"RoleId"
).DefaultValue = RoleId
AddRoleUserUN.Text = RoleId
RoleAvailUsers.Rebind()
End
If
End
If
End
Sub
End
Class
function
HideColumn(index)
{
var
columnCount = RadGrid1.get_masterTableView().get_columns().length - 1;
if
(index < 0 || index > columnCount)
{
alert(
"Invalid index! The valid range is: "
+ 0 +
"-"
+ columnCount);
}
else
{
RadGrid1.get_masterTableView().hideColumn(index);
}
}
<
script
type
=
'text/javascript'
>
function onCheckBoxClickctl00_Content_ddc1_CB1(){
var combo=$find('ctl00_Content_ddc1_CB1');
var CountChecked=0;
var text='This is the text message';
var max ='4';
var items = combo.get_items();
for(var i=0;i<
items.get_count
();i++){
var
item
=
items
.getItem(i);
var chk1=$get(combo.get_id()+'_i'+i+'_chk1');
if(chk1.checked){
CountChecked ++;
if(max < CountChecked) {
chk1.checked
=
false
;
}
text+=item.get_text()+',';
if(CountChecked > 3)
{ text = 'You have ' + CountChecked + ' items selected :';}
}
}
text=removeLastDelimiter(text);
if(text.length>0){combo.set_text(text);}else{combo.set_text('');}}
</
script
>
protected
void
GrdTicketsItemCommand(
object
sender, GridCommandEventArgs e)
{
if
(e.CommandName == RadGrid.InitInsertCommandName)
{
// show insert form works fine
e.Item.OwnerTableView.EditFormSettings.UserControlName =
"BackendControls/AddBillingAndTicket.ascx"
;
e.Item.OwnerTableView.EditFormSettings.EditFormType = GridEditFormType.WebUserControl;
e.Item.OwnerTableView.InsertItem();
// How to hide all items in MasterTableView and all DetailsTables?
// this doesn't work:
foreach
(GridDataItem item
in
GrdTickets.Items)
item.Visible =
false
;
}
}
Hi,
Plesae let us know how to achieve the following.
1. Avoid loading the user control in nested view template when outer grid/page loads.
2. Allow loading of user control ONLY for the expanded row of the outer grid.
Find below the source code to work on. Any prompt help on this is really appreciated.
Note: The source code really doesn't have any parent and child relation in the data that it displays because it just a sample.
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="NVT._Default" %>
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<%@ Register Src="PlayerDetails.ascx" TagName="PlayerDetails" TagPrefix="Player" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html
xmlns
=
"http://www.w3.org/1999/xhtml"
>
<
head
runat
=
"server"
>
<
title
></
title
>
</
head
>
<
body
>
<
form
id
=
"form1"
runat
=
"server"
>
<
div
>
<
telerik:RadScriptManager
ID
=
"scriptManager"
runat
=
"server"
></
telerik:RadScriptManager
>
<
telerik:RadGrid
ID
=
"grdPlayers"
runat
=
"server"
OnNeedDataSource
=
"GetPlayers"
AutoGenerateColumns
=
"true"
OnItemCommand
=
"grdPlayers_ItemCommand"
OnItemCreated
=
"grdPlayers_ItemCreated"
>
<
MasterTableView
>
<
NestedViewTemplate
>
<
asp:Panel
runat
=
"server"
ID
=
"InnerContainer"
Visible
=
"false"
>
<
Player:PlayerDetails
id
=
"ucPlayerDetails"
runat
=
"server"
></
Player:PlayerDetails
>
</
asp:Panel
>
</
NestedViewTemplate
>
</
MasterTableView
>
</
telerik:RadGrid
>
</
div
>
</
form
>
</
body
>
</
html
>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Telerik.Web.UI;
using System.Data;
namespace NVT
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void GetPlayers(object source, GridNeedDataSourceEventArgs e)
{
DataSet dsPlayers = new DataSet();
DataTable tblPlayers = new DataTable();
tblPlayers.Columns.Add("Name");
tblPlayers.Columns.Add("Age");
tblPlayers.Rows.Add("Sachin", "36");
tblPlayers.Rows.Add("Virender", "30");
dsPlayers.Tables.Add(tblPlayers);
grdPlayers.DataSource = dsPlayers;
}
protected void grdPlayers_ItemCommand(object source, GridCommandEventArgs e)
{
if (e.CommandName == RadGrid.ExpandCollapseCommandName && e.Item is GridDataItem)
{
((GridDataItem)e.Item).ChildItem.FindControl("InnerContainer").Visible =
!e.Item.Expanded;
}
}
protected void grdPlayers_ItemCreated(object sender, GridItemEventArgs e)
{
if (e.Item is GridNestedViewItem)
{
e.Item.FindControl("InnerContainer").Visible = ((GridNestedViewItem)e.Item).ParentItem.Expanded;
}
}
}
}
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="PlayerDetails.ascx.cs" Inherits="NVT.PlayerDetails" %>
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<
telerik:RadGrid
ID
=
"grdPlayerDetails"
runat
=
"server"
AutoGenerateColumns
=
"true"
>
</
telerik:RadGrid
>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using Telerik.Web.UI;
namespace NVT
{
public partial class PlayerDetails : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
GetPlayerDetails();
grdPlayerDetails.DataBind();
}
protected void GetPlayerDetails()
{
DataSet dsPlayerDetails = new DataSet();
DataTable tblPlayerDetails = new DataTable();
tblPlayerDetails.Columns.Add("Name");
tblPlayerDetails.Columns.Add("Age");
tblPlayerDetails.Rows.Add("Sachin", "36");
tblPlayerDetails.Rows.Add("Virender", "30");
dsPlayerDetails.Tables.Add(tblPlayerDetails);
grdPlayerDetails.DataSource = dsPlayerDetails;
}
}
}
Thanks,
Kishore