or
//code snippet #1 - this works when in hierarchyloadmode=Client
protected void grdVerification_ItemDataBound(object sender, GridItemEventArgs e)
{ if (e.Item is GridDataItem) { GridDataItem item = (GridDataItem)e.Item; //build and set the value for the Escalators GridTableCell cellEscalatorID = (GridTableCell)item["EscalatorID"]; GridTableCell cellEscalatorName = (GridTableCell)item["EscalatorName"]; //add a label to store the EscalatorName Label lblEscalatorName = new Label(); lblEscalatorName.ID = "lblEscalatorName"; lblEscalatorName.Text = cellEscalatorName.Text; cellEscalatorName.Controls.Add(lblEscalatorName); DropDownList ddlEscalators = new DropDownList(); ddlEscalators.DataSourceID = "dsrcEscalators"; ddlEscalators.DataTextField = "EscalatorName"; ddlEscalators.DataValueField = "EscalatorID"; ddlEscalators.Attributes.Add("style", "display:none"); ddlEscalators.Attributes.Add("OnChange", "ddlEscalators_Change(this)"); ddlEscalators.ID = "ddlEscalators"; cellEscalatorName.Controls.Add(ddlEscalators); (item.FindControl("ddlEscalators") as DropDownList).SelectedValue = cellEscalatorID.Text;
//code snippet #2 - this errors when it can't find the control. As you can see, I tried calling it by referencing
// the cell's controls and the item's controls. Neither approach works.
protected void grdVerification_ItemCreated(object sender, GridItemEventArgs e)
{
if (e.Item is GridDataItem)
{
GridDataItem item = (GridDataItem)e.Item;
//build and set the value for the Escalators
GridTableCell cellEscalatorName = (GridTableCell)item["EscalatorName"];
//add a label to store the EscalatorName
Label lblEscalatorName = new Label();
lblEscalatorName.ID = "lblEscalatorName";
lblEscalatorName.BackColor = System.Drawing.Color.Orange;
cellEscalatorName.Controls.Add(lblEscalatorName);
DropDownList ddlEscalators = new DropDownList();
ddlEscalators.DataSourceID = "dsrcEscalators";
ddlEscalators.DataTextField = "EscalatorName";
ddlEscalators.DataValueField = "EscalatorID";
ddlEscalators.Attributes.Add("style", "display:none");
ddlEscalators.Attributes.Add("OnChange", "ddlEscalators_Change(this)");
ddlEscalators.ID = "ddlEscalators";
cellEscalatorName.Controls.Add(ddlEscalators);
}
}
protected void grdVerification_ItemDataBound(object sender, GridItemEventArgs e)
{
if (e.Item is GridDataItem)
{
GridDataItem item = (GridDataItem)e.Item;
////build and set the value for the Escalators
GridTableCell cellEscalatorID = (GridTableCell)item["EscalatorID"];
GridTableCell cellEscalatorName = (GridTableCell)item["EscalatorName"];
(cellEscalatorName.FindControl("lblEscalatorName") as Label).Text = cellEscalatorName.Text;
(item.FindControl("ddlEscalators") as DropDownList).SelectedValue = cellEscalatorID.Text;
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="TelerikLoginWebForm.aspx.cs" Inherits="TelerikLoginWebForm" %><%@ Register src="LoginControl.ascx" tagname="LoginControl" tagprefix="uc1" %><%@ Register assembly="Telerik.Web.UI" namespace="Telerik.Web.UI" tagprefix="telerik" %><!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> <telerik:RadStyleSheetManager id="RadStyleSheetManager1" runat="server" /></head><body> <form id="form1" runat="server" > <asp:ScriptManager ID="RadScriptManager1" runat="server"> <Scripts> <%--Needed for JavaScript IntelliSense in VS2010--%> <%--For VS2008 replace RadScriptManager with ScriptManager--%><%-- <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.Core.js" /> <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQuery.js" /> <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQueryInclude.js" />--%> </Scripts> </asp:ScriptManager> <script type="text/javascript"> //Put your JavaScript code here. </script> <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="LoginView"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="LoginView" UpdatePanelHeight="" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager> <div> <uc1:LoginControl ID="LoginControl1" runat="server" /> <asp:LoginView ID="LoginView" runat="server"> <AnonymousTemplate> </AnonymousTemplate> <LoggedInTemplate> DGV </LoggedInTemplate> </asp:LoginView> </div> </form></body></html><telerik:GridDropDownColumn HeaderText="Items" UniqueName="column1" DataSourceID="SqlDataSource1" ListTextField="ProductName" ListValueField="Pid" DataField="ProductName" > </telerik:GridDropDownColumn><asp:SqlDataSource ID="SqlDataSource1" runat="server" DataSourceMode="DataReader" ConnectionString="<%$ ConnectionStrings:ChalkHillConnectionString3 %>" SelectCommand="SELECT [ProductName] FROM [tblProducts] ORDER BY [Pid]"></asp:SqlDataSource><telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="False" GridLines="None" OnItemDataBound="RadGrid1_ItemDataBound"> <MasterTableView> <RowIndicatorColumn> <HeaderStyle Width="20px" /> </RowIndicatorColumn> <ExpandCollapseColumn> <HeaderStyle Width="20px" /> </ExpandCollapseColumn> <Columns> <telerik:GridTemplateColumn HeaderText="Items" UniqueName="ItemColumn"> <ItemTemplate> <asp:Label ID="lblItemName" runat="server" /> </ItemTemplate> <EditItemTemplate> <asp:DropDownList ID="ddlItems" runat="server" DataSourceID="SqlDataSource1" OnSelectedIndexChanged="ddlItems_SelectedIndexChanged" /> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn HeaderText="Rate" UniqueName="RateColumn"> <ItemTemplate> <asp:Label ID="lblRate" runat="server" /> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn HeaderText="Quantity" UniqueName="QuantityColumn"> <ItemTemplate> <asp:Label ID="lblQuantity" runat="server" /> </ItemTemplate> <EditItemTemplate> <telerik:RadTextBox ID="txtQuantity" runat="server" /> </EditItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn HeaderText="Amount" UniqueName="AmountColumn"> <ItemTemplate> <asp:Label ID="lblAmount" runat="server" /> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridButtonColumn HeaderText="Done" Text="Done" UniqueName="Donecolumn"> </telerik:GridButtonColumn> </Columns> </MasterTableView></telerik:RadGrid>protected void ddlItems_SelectedIndexChanged(object sender, EventArgs e) { if (ddlItems.SelectedIndex > 0) { DataSet ds = objSQLHelper.GetProductDetails("select * from tblProducts where Pid=" + ddlItems.SelectedValue); if (ds != null) { lblRate.Text = ds.Tables[0].Rows[0]["Rate"].ToString(); } } } protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e) { if ((e.Item is GridEditFormItem) && (e.Item.IsInEditMode)) { GridEditFormItem editform = (GridEditFormItem)e.Item; DropDownList ddlItems = (DropDownList)editform.FindControl("ddlItems"); ddlItems.DataSource = ds; ddlItems.DataTextField = "ProductName"; ddlItems.DataValueField = "Pid"; ddlItems.DataBind(); } }
| GridMaskedColumn maskColumn = new GridMaskedColumn(); |
| columns.Add(maskColumn); |
| maskColumn.UniqueName = myDataField; |
| maskColumn.HeaderText = myHeaderText; |
| maskColumn.Mask = myMask; |
| maskColumn.DataField = myDataField; |
| maskColumn.SortExpression = myDataField; |
| maskColumn.ShowSortIcon = true; |
| maskColumn.ShowFilterIcon = true; |
| maskColumn.ReadOnly = !editable; |
| [GridException: Cannot create column with the specified type name: GridMaskedColumn] |
| Telerik.Web.UI.GridColumnCollection.CreateColumnFromTypeName(String columnTypeName) +1211 |
| Telerik.Web.UI.GridColumnCollection.System.Web.UI.IStateManager.LoadViewState(Object savedState) +428 |
| Telerik.Web.UI.GridTableView.LoadStructureState(Object SavedStructure) +354 |
| Telerik.Web.UI.RadGrid.LoadTableViewStructure(IEnumerator stateEnumerator, GridTableView tableView) +101 |
| Telerik.Web.UI.RadGrid.LoadViewState(Object savedStateObject) +276 |
| System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +183 |
| System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 |
| System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +221 |
| System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 |
| System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +221 |
| System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 |
| System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +221 |
| System.Web.UI.Page.LoadAllState() +312 |
| System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1661 |