CPK_2011 CPK_2011 - 1 month ago 13
jQuery Question

Working with Telerik RadGrid

I have a Rad combo box and a 2 RadGrids - grvUser and grvRole

grvUser RadGrid is as follows...

<telerik:RadGrid ID="grvUser" runat="server" EnableEmbeddedSkins="False" Skin="skn_RadGrid" SkinsDir="|CurrentTheme|/" SkinsPath="|CurrentTheme|/"
OnItemCreated="grvUser_ItemCreated" OnItemCommand="grvUser_ItemCommand" OnItemDataBound="grvUser_ItemDataBound" OnNeedDataSource="grvUser_NeedDataSource" GroupHeaderItemStyle-CssClass="rgGroupPanel">
<MasterTableView TableLayout="Fixed" OverrideDataSourceControlSorting="true" NoMasterRecordsText ="No Records Found, Please Refine Search To Display ">
<Columns>
<telerik:GridBoundColumn FilterControlAltText="Filter column column" DataField="UserId"
UniqueName="UserId" HeaderText="User Id" HeaderStyle-Width="120px" FilterControlWidth="70px"
AutoPostBackOnFilter="true">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn FilterControlAltText="Filter column column" DataField="UserName" AllowFiltering="true" ShowFilterIcon="true"
UniqueName="UserName" HeaderText="User Name" HeaderStyle-Width="120px" FilterControlWidth="70px"
AutoPostBackOnFilter="true">
</telerik:GridBoundColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>


grvRole RadGrid is as follows...

<telerik:RadGrid ID="grvRole" runat="server" EnableEmbeddedSkins="False" Skin="skn_RadGrid" SkinsDir="|CurrentTheme|/" SkinsPath="|CurrentTheme|/"
OnItemCreated="grvRole_ItemCreated" OnItemCommand="grvRole_ItemCommand" OnItemDataBound="grvRole_ItemDataBound" OnNeedDataSource="grvRole_NeedDataSource" GroupHeaderItemStyle-CssClass="rgGroupPanel">
<MasterTableView TableLayout="Fixed" OverrideDataSourceControlSorting="true" NoMasterRecordsText ="No Records Found, Please Refine Search To Display ">
<Columns>
<telerik:GridBoundColumn FilterControlAltText="Filter column column" DataField="RoleId"
UniqueName="RoleId" HeaderText="Role Id" HeaderStyle-Width="120px" FilterControlWidth="70px"
AutoPostBackOnFilter="true">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn FilterControlAltText="Filter column column" DataField="RoleName" AllowFiltering="true" ShowFilterIcon="true"
UniqueName="RoleName" HeaderText="Role Name" HeaderStyle-Width="120px" FilterControlWidth="70px"
AutoPostBackOnFilter="true">
</telerik:GridBoundColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>


Code for RadComboBox is as follows...

<telerik:RadComboBox ID="ddlType" runat="server" DataValueField="Description"
DataTextField="Description" Text="(Select)" AllowCustomText="True" Width="200px"
OnClientDropDownClosed="onDropDownClosing1" Skin="Default">
<ItemTemplate>
<div onclick="StopPropagation(event)" class="combo-item-template" onmousemove="">
<asp:CheckBox runat="server" ID="chk1" onclick="onStatusChecked(this)" />
<asp:Label runat="server" ID="Label1" AssociatedControlID="chk1">
<%# Eval("Description")%>
</asp:Label>
</div>
</ItemTemplate>
<HeaderTemplate>
<asp:CheckBox ID="ChckAll" Text="(Check All)" runat="server" OnClick="checkAllStatus(this)" />
</HeaderTemplate>
</telerik:RadComboBox>


The
ddlType
RadComboBox contains 2 values. 1 is User and 2 is Role. By default "User" is selected and such that
grvUser
will be displayed. If the user selects Role, then we need to display
grvRole
defined in the aspx page.

How can I fire onchange event for RadComboBox and display proper RadGrid either User or Role?

UPDATE

Implementation in jQuery is Ok for me.

Answer

Fast post before lunch break. Edit is coming.

1/. http://docs.telerik.com/devtools/aspnet-ajax/controls/combobox/server-side-programming/selectedindexchanged documentation About Combobox event.

2/. Lets say that if i can display the proper label, you can do it with a grid. grvRole.Visibility = true; is the same that myLabel.Visibility.

3/. Code sample

        <telerik:RadComboBox ID="RadComboBox1" runat="server" OnSelectedIndexChanged="RadComboBox1_SelectedIndexChanged"  autopostback="True" >
        <Items>   
            <telerik:RadComboBoxItem runat="server" Text="NADA" />   
            <telerik:RadComboBoxItem runat="server" Text="grvUser" />   
            <telerik:RadComboBoxItem runat="server" Text="grvRole" /> 
        </Items>
    </telerik:RadComboBox>

    <br />
    <asp:Label ID="Label1" runat="server" Text="A LABEL PRETENDING TO BE A GRID (grvUser)" />
    <asp:Label ID="Label2" runat="server" Text="A LABEL PRETENDING TO BE A GRID (grvRole)" />

Code behind:

    protected void RadComboBox1_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e)
{
    if (e.Text=="NADA")
    { Label1.Visible = true; Label2.Visible = true; }
    else if (e.Text == "grvUser")            
    {Label1.Visible=true; Label2.Visible=false;}
    else if (e.Text == "grvRole")
    { Label1.Visible = false; Label2.Visible = true; }
}

Sorry for sloppy post i try to provide fast answer .

Comments