<%@ Page Language="C#" MasterPageFile="~/Pages/Master/MasterPage.master" AutoEventWireup="true" CodeFile="Software.aspx.cs" Inherits="Pages_Projects_Software" Title="Software" %><asp:Content ID="Content1" ContentPlaceHolderID="head" runat="Server"></asp:Content><asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server"> <telerik:RadScriptBlock ID="RadCodeBlock1" runat="server"> <script type="text/javascript"> function ShowFolloUpForm(id) { window.radopen("FollowUp.aspx?IdProject=" + id, "FollowUpDialog"); return false; } </script> </telerik:RadScriptBlock> <telerik:RadAjaxManager ID="RessourceManager" runat="server" OnAjaxRequest="RessourceManager_AjaxRequest"> <AjaxSettings> <telerik:AjaxSetting AjaxControlID="RessourceManager"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="RadGridSoftware" LoadingPanelID="RadAjaxLoadingPanel1" /> </UpdatedControls> </telerik:AjaxSetting> <telerik:AjaxSetting AjaxControlID="RadGridSoftware"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="RadGridSoftware" LoadingPanelID="RadAjaxLoadingPanel1" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings> </telerik:RadAjaxManager> <telerik:RadWindowManager ID="RadWindowManagerSoftware" runat="server" EnableEmbeddedSkins="false"> <Windows> <telerik:RadWindow ID="EditSoftware" runat="server" Title="" Height="500px" Width="650px" Left="150px" ReloadOnShow="true" ShowContentDuringLoad="false" Behaviors="None" Modal="true" VisibleStatusbar="false" /> <telerik:RadWindow ID="FollowUpDialog" runat="server" Title="THIS IS A BAD TITLE" Height="300px" Width="500px" Left="150px" ReloadOnShow="true" ShowContentDuringLoad="false" Behaviors="None" Modal="true" VisibleStatusbar="false" /> </Windows> </telerik:RadWindowManager> <fieldset> <legend>Liste des Softwares</legend> <telerik:RadGrid ID="RadGridSoftware" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSourceSoftware" GridLines="None" ShowFooter="True" AllowSorting="True" EnableLinqExpressions="False" OnItemCreated="RadGridSoftware_ItemCreated" OnItemCommand="RadGridSoftware_ItemCommand" EnableEmbeddedSkins="false"> <MasterTableView DataKeyNames="IdSoftware" DataSourceID="SqlDataSourceSoftware" ShowHeader="true" AutoGenerateColumns="False" AllowPaging="true" NoMasterRecordsText="Pas de Software" HierarchyLoadMode="ServerOnDemand" CommandItemDisplay="Top" Name="Master"> <CommandItemTemplate> <a href="#" onclick="return ShowSoftwareInsertForm();"> <img alt="add" src="../../Images/add.gif" />Ajouter un Software</a> </CommandItemTemplate> [... NestedViewTemplate with another RadGrid on it but it's not important ...] <ExpandCollapseColumn Visible="True"> </ExpandCollapseColumn> <Columns> <telerik:GridTemplateColumn UniqueName="pTemplateFollowUpColumn"> <ItemStyle Width="20px" /> <ItemTemplate> <asp:ImageButton ID="btnFollowUp" CssClass="cmdCursor" runat="server" ImageUrl="~/Images/note_accept.gif" AlternateText='Follow Up / View Follow Up' Text="Follow Up" /> </ItemTemplate> </telerik:GridTemplateColumn> </Columns> </MasterTableView> </telerik:RadGrid> </fieldset> <asp:SqlDataSource ID="SqlDataSourceSoftware" runat="server" ConnectionString="..." SelectCommand="LIST_Software" SelectCommandType="StoredProcedure"> </asp:SqlDataSource> <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server" EnableEmbeddedSkins="false"> </telerik:RadAjaxLoadingPanel></asp:Content>using System;using System.Collections.Generic;using System.Configuration;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using Telerik.Web.UI;public partial class Pages_Projects_Software : Page{ #region Private et Public Properties, Enum et Constantes /// <summary> /// Gets or sets the id Project. /// </summary> /// <value>The id Project.</value> protected Int32 IdProject { get; set; } #endregion #region Cycle de vie et Evenements /// <summary> /// Handles the Load event of the Page control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="System.EventArgs"/> instance containing the event data.</param> protected void Page_Load(object sender, EventArgs e) { } /// <summary> /// Handles the ItemDataBound event of the RadGridProjectNested control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="Telerik.Web.UI.GridItemEventArgs"/> instance containing the event data.</param> protected void RadGridProjectNested_ItemDataBound(object sender, GridItemEventArgs e) { if (e.Item is GridDataItem) { GridDataItem item = (GridDataItem) e.Item; IdProject = (int)item.OwnerTableView.DataKeyValues[item.ItemIndex]["IdProject"]; ImageButton FollowUp = (ImageButton)item.FindControl("btnFollowUp"); FollowUp.Attributes["onclick"] = String.Format("return ShowFollowUpForm('{0}');", IdProject); [...] } } #endregion }<%@ Page Title="" Language="C#" MasterPageFile="~/Pages/Master/MasterPage2.master" AutoEventWireup="true" CodeFile="FollowUp.aspx.cs" Inherits="Pages_Projects_FollowUp" %><asp:Content ID="Content1" ContentPlaceHolderID="head" runat="Server"></asp:Content><asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server"> <telerik:RadCodeBlock ID="RadCodeBlock1" runat="server"> <script type="text/javascript"> function GetRadWindow() { var oWindow = null; if (window.radWindow) oWindow = window.radWindow; else if (window.frameElement.radWindow) oWindow = window.frameElement.radWindow; return oWindow; } function CloseWindow() { GetRadWindow().Close(); } </script> </telerik:RadCodeBlock> <p>POC</p> <asp:Button ID="btnClose runat="server" Text="Close the window" OnClientClick="CloseWindow();" /></asp:Content>using System;using System.Linq;using System.Web.UI.WebControls;using Telerik.Web.UI;/// <summary>/// /// </summary>public partial class Pages_Projects_FollowUp : System.Web.UI.Page{ #region Cycle de vie et Evenements /// <summary> /// Déclenche l'événement <see cref="E:System.Web.UI.Control.Init"/> pour initialiser la page. /// </summary> /// <param name="e"><see cref="T:System.EventArgs"/> qui contient les données d'événement.</param> protected override void OnInit(EventArgs e) { base.OnInit(e); // >>> Let's change the RadWindow title. In my exemple, I check if there is a QueryString particular value. If it's true, then I change the RadWindow Title. // FollowUpDialog.Title = "This is a good title"; } #endregion }Does anybody have a solution or a workaround?<asp:LinkButton ID="LinkButton3" D="SelectButton" runat="server" CommandName="Select" CausesValidation="False">
outside table
<table>
<tr>
<td>inside</td>
<td>table </td>
</tr>
</table>
</asp:LinkButton>

protected void EmpGrid_ItemDataBound(object sender, GridItemEventArgs e)
{
if (e.Item is GridEditFormItem && e.Item.IsInEditMode)
{
GridEditFormItem gditem = e.Item as GridEditFormItem;
RadPanelBar RadPanelBar1 = gditem.FindControl("RadPanelBar1") as RadPanelBar;
RadPanelItem panelItem1 = (RadPanelItem)RadPanelBar1.FindItemByText("Forwarding Info");
TextBox txtForwardCompany = panelItem1.FindControl("txtForwardCompany") as TextBox;
txtForwardCompany.Text = (gditem.DataItem as DataRowView)["EmpForwardCompany"].ToString();
}
}
The problem is that (gditem.DataItem as DataRowView) returns null. The gditem.DataItem object is populated, it apparently can't be cast to a DataRowView. Any thoughts on what I'm doing wrong here?
Thanks in advance
SqlDataSource1.InsertCommand = @"INSERT INTO [Activity] (SqlDataSource1.Insert();RadScheduler1_Form_StartDate_dateInput_text<a href="#" onclick="openRadWindow('11', 'Mr. Benjamin White', '1', ' ', ' ', ' ', ' ', '1/MzOBjfbqkF-6dOtzU4dnlVCR3DkkRp0XvTyoiwwKljQ','9','19/01/2011,21/01/2011,22/01/2011','crewbook@gcdemos3.co.uk','07983633674','2'); return false;">Edit</a><a href="#" onclick="openQVWindow('11'); return false;">Mr. Benjamin White</a><script type="text/javascript"> function openRadWindow(EngID, EngName, EngJobSkillID, ClientInviteSentOn, ClientConfirmationSentOn, EngineerInviteResponseOn, EngineerConfirmationResponseOn, GoogleSessionToken, JobID, BookedDatesString, EngEmailAddress, EngMobile, SubscriptionType) { var InternalJobRef = $("[id$='_lblJobTitle_Ref']").html(); var JobTitle = $("[id$='_lblJobTitle']").html(); var oWnda = radopen("DialogEditResourceBooking.aspx?engID=" + EngID + "&EngName=" + EngName + "&EngJobSkillID=" + EngJobSkillID + "&ClientInviteSentOn=" + ClientInviteSentOn + "&ClientConfirmationSentOn=" + ClientConfirmationSentOn + "&EngineerInviteResponseOn=" + EngineerInviteResponseOn + "&EngineerConfirmationResponseOn=" + EngineerConfirmationResponseOn + "&GoogleSessionToken=" + GoogleSessionToken + "&JobID=" + JobID + "&BookedDates=" + BookedDatesString + "&JobTitle=" + JobTitle + "&InternalJobRef=" + InternalJobRef + "&EngEmailAddress=" + EngEmailAddress + "&EngMobile=" + EngMobile + "&SubscriptionType=" + SubscriptionType, "RadWindow1"); oWnda.setSize(430, 400); oWnda.set_offsetElementID($("#<%=refreshResultsGrid.ClientID %>").attr('id')); } function openQVWindow(EngID) { var oWndb = radopen("DialogQuickViewEngineer.aspx?engID=" + EngID, "RadWindow1"); oWndb.setSize(550, 650); oWndb.set_offsetElementID($("#<%=refreshResultsGrid.ClientID %>").attr('id')); } </script><%@ Control Language="C#" AutoEventWireup="true" CodeFile="ucTimesheet.ascx.cs" Inherits="PRIS.Timesheet.ucTimesheet" %>
<%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %>
...
<telerik:RadAjaxManagerProxy ID="ramAjaxManager" runat="server"> <AjaxSettings> ... <telerik:AjaxSetting AjaxControlID="rdgTimeList"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="rdgTimeList" LoadingPanelID="pnlListLoading" /> </UpdatedControls> </telerik:AjaxSetting> ... <telerik:AjaxSetting AjaxControlID="btnSubmit"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="pnlTimeSheet" LoadingPanelID="pnlListLoading" /> <telerik:AjaxUpdatedControl ControlID="pnlForm" /> </UpdatedControls> </telerik:AjaxSetting> <telerik:AjaxSetting AjaxControlID="btnCancel"> <UpdatedControls> <telerik:AjaxUpdatedControl ControlID="pnlTimeSheet" LoadingPanelID="pnlListLoading" /> <telerik:AjaxUpdatedControl ControlID="pnlForm" /> </UpdatedControls> </telerik:AjaxSetting> </AjaxSettings></telerik:RadAjaxManagerProxy><asp:Panel runat="server" ID="pnlForm"> ... <asp:Button ID="btnSubmit" runat="server" Text="Boek" CssClass="Button_Pris" TabIndex="6" OnClick="btnSubmit_Click" /> ... <asp:Button ID="btnCancel" runat="server" Text="Cancel" CssClass="Button_Pris" TabIndex="7" OnClick="btnCancel_Click" /> ...</asp:Panel><asp:Panel runat="server" ID="pnlTimeSheet"> <telerik:RadGrid ID="rdgTimeList" runat="server" AutoGenerateColumns="false" OnNeedDataSource="rdgTimeList_NeedDataSource" OnItemDataBound="rdgTimeList_ItemDataBound" OnItemCreated="rdgTimeList_ItemCreated" ShowFooter="true"> <MasterTableView> <Columns> <telerik:GridTemplateColumn> <HeaderStyle Width="22px" /> <ItemTemplate> <asp:ImageButton ID="btnEdit" runat="server" ImageUrl="~/DesktopModules/PRIS.Common/Images/icn_pencil.gif" OnCommand="btnEdit_Click" CommandName="id" CommandArgument='<%# DataBinder.Eval(Container.DataItem, "pkid").ToString()%>' /> </ItemTemplate> </telerik:GridTemplateColumn> <telerik:GridTemplateColumn> <HeaderStyle Width="22px" /> <ItemTemplate> <asp:ImageButton ID="btnDelete" runat="server" ImageUrl="~/DesktopModules/PRIS.Common/Images/icn_delete.gif" OnCommand="btnDelete_Click" CommandName="id" CommandArgument='<%# DataBinder.Eval(Container.DataItem, "pkid").ToString()%>' OnClientClick="if(!confirm('Weet u het zeker?')){return false;}" /> </ItemTemplate> </telerik:GridTemplateColumn> ... </Columns> </MasterTableView></telerik:RadGrid>...</asp:Panel>protected void rdgTimeList_NeedDataSource(object sender, GridNeedDataSourceEventArgs e){ ... int liEmployeeId = (!String.IsNullOrEmpty(ddlEmployee.SelectedValue)) ? Convert.ToInt32(ddlEmployee.SelectedValue) : -1; rdgTimeList.DataSource = PRIS.SP.SpCacheUrenVanMedewerker(liEmployeeId, StartDate, EndDate, MaatschappijId).GetDataSet(); ...}protected void btnSubmit_Click(object sender, EventArgs e){ SaveForm(); rdgTimeList.Rebind();}protected void btnCancel_Click(object sender, EventArgs e){ ClearForm();}protected void SaveForm(){ ... PAtblUur loUur = null; string lsProject = ddlProject.SelectedValue; string lsDeliverable = ddlDeliverable.SelectedValue; string lsActivity = ddlActivity.SelectedValue; bool saved = false; if (objCalendar.SelectedDates.Count == 1) { loUur = TimeObject; loUur.CBMaatschappijID = MaatschappijId; loUur.FKActiviteitID = this.SaveActivity(); loUur.FKPersoonRelatieID = (!String.IsNullOrEmpty(ddlEmployee.SelectedValue)) ? Convert.ToInt16(ddlEmployee.SelectedValue) : -1; loUur.DatumBezetting = objCalendar.SelectedDates[0].Date; loUur.UrenBesteed = (!String.IsNullOrEmpty(txtHours.Text)) ? Convert.ToDecimal(txtHours.Text) : 0; try { loUur.Save(); saved = true; } catch { ErrorManager.Errors = loUur.Errors; ErrorManager.LoadErrors(); } } else { ... } if (saved) { ClearForm(false); } ...}private void ClearForm() { ClearForm(true); }private void ClearForm(bool pbClearDate){ // Clear message label lblMessage.Text = ""; // Get the current user's id int liEmployeeId = (!String.IsNullOrEmpty(ddlEmployee.SelectedValue)) ? Convert.ToInt32(ddlEmployee.SelectedValue) : -1; // Reload Employee combobox ddlEmployee_UpdateDataBind(liEmployeeId); // Reload Project combobox ddlProject_UpdateDataBind(liEmployeeId); // Clear Deliverable combobox ddlDeliverable.Text = ""; ddlDeliverable.Items.Clear(); ddlDeliverable.SelectedValue = ""; ddlDeliverable.SelectedIndex = 0; // Clear Activity combobox ddlActivity.Text = ""; ddlActivity.Items.Clear(); ddlActivity.SelectedValue = ""; ddlActivity.SelectedIndex = 0; // Clear Hours textbox txtHours.Text = ""; hfTimeId.Value = "-1"; // Clear the selected dates if (pbClearDate) { objCalendar.SelectedDates.Clear(); objCalendar.SelectedDate = System.DateTime.Now; } // Rebind RadGrid rdgTimeList.Rebind(); if (ErrorManager.Errors.Count == 0) { ErrorManager.HideErrors(); }}