/// <summary> /// Handles the OnClick event of the lbtnAssign 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 lbtnAssign_OnClick(object sender, EventArgs e) { SelectedRequirments = rtvRequirements.CheckedNodes.Select(checkedNode => Guid.Parse(checkedNode.Value)).ToList(); if (RequestId != Guid.Empty) { var request = DataManager.Request.SelectById(CurrentUser.Instance.SiteID, RequestId); if (request != null) { request.tbl_Requirement.Clear(); var requirements = DataManager.Requirement.SelectAll(CurrentUser.Instance.SiteID).Where( o => SelectedRequirments.Contains(o.ID)).ToList(); foreach (var requirement in requirements) { request.tbl_Requirement.Add(requirement); } DataManager.Request.Update(request); if (RequirementsAssigned != null) { RequirementsAssigned(this); } } } if (!Page.ClientScript.IsStartupScriptRegistered("CloseAssignToRequirement")) { ScriptManager.RegisterStartupScript(Page, typeof(Page), "CloseAssignToRequirement", "CloseAssignToRequirementRadWindow();", true); } }
/// <summary> /// Handles the OnNodeDataBound event of the rtvRequirements control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="Telerik.Web.UI.RadTreeNodeEventArgs"/> instance containing the event data.</param> protected void rtvRequirements_OnNodeDataBound(object sender, RadTreeNodeEventArgs e) { var requirement = (tbl_Requirement)e.Node.DataItem; e.Node.Text = string.Format("Требование №{0} от {1} ({2})", requirement.Number, requirement.CreatedAt.ToString("dd.MM.yyyy"), requirement.ShortDescription); e.Node.Checked = SelectedRequirments.Contains(requirement.ID); }