I have a grid that when I go into edit mode I loose my Links except for refrest.
Here is part of my code.
<table>
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<tr class="comment">
<td align="left" colspan="2">
<
<asp:Label ID="lblCreatedBy" runat="server" Text='<%# DataBinder.Eval (Container.DataItem, "User.UserName") %>' />
<asp:Label ID="lblCreatedDate" runat="server" Text='<%# DataBinder.Eval (Container.DataItem, "CreatedDateTime") %>' />
>
</td>
<td align="left">
<asp:Label ID="lblComment" runat="server" Text='<%# DataBinder.Eval (Container.DataItem, "ApplicantNote") %>' />
</td>
</tr>
<tr>
<td> </td>
<td colspan="2">
<table>
<asp:Repeater ID="Repeater2" runat="server" DataSource='<%# DataBinder.Eval(Container.DataItem, "Notes") %>'>
<ItemTemplate>
<tr class="comment">
<td align="left">
<
<asp:Label ID="lblCreatedBy2" runat="server" Text='<%# DataBinder.Eval (Container.DataItem, "User.UserName") %>' />
<asp:Label ID="lblCreatedDate2" runat="server" Text='<%# DataBinder.Eval (Container.DataItem, "CreatedDateTime") %>' />
>
</td>
<td align="left">
<asp:Label ID="lblComment2" runat="server" Text='<%# DataBinder.Eval (Container.DataItem, ApplicantNote") %>' />
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
<table style="margin-left:auto; margin-right:auto; border-style: solid; border-color: Navy; border-width: 2px;" width="760px">
<tr>
<td style="margin-left:auto; margin-right:auto">
<asp:Label ID="noteTitleLabel"
runat="server"
Text="Note for "
Font-Bold="true" />
<asp:Label ID="noteApplicant"
runat="server"
Font-Bold="true" />
</td>
</tr>
<tr>
<td>
<telerik:RadGrid ID="gridComments"
runat="server"
Skin="Vista" Width="750px"
OnDetailTableDataBind="gridComments_DetailDataBind" OnNeedDataSource="gridComments_NeedDataSource"
OnInsertCommand="gridComments_InsertCommand"
ondeletecommand="gridComments_Delete" onupdatecommand="gridComment_Update"
onitemdatabound="gridComment_ItemDataBound" >
<MasterTableView AutoGenerateColumns="false"
DataKeyNames="NoteID, ParentID"
CommandItemDisplay="Top" EditMode="PopUp">
<DetailTables>
<telerik:GridTableView AutoGenerateColumns="false"
CommandItemDisplay="Top" DataKeyNames="NoteID, ParentID" Width="710px">
<NoRecordsTemplate>
<p>No replies to this comment</p>
</NoRecordsTemplate>
<Columns>
<telerik:GridBoundColumn DataField="ParentID" Visible="false">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="User.UserName" UniqueName="User.UserNameChild" HeaderText="User">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="CreatedDateTime" HeaderText="Date" UniqueName="CreatedDateTimeChild">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="ApplicantNote" HeaderText="Note" UniqueName="ApplicantNoteChild">
</telerik:GridBoundColumn>
</Columns>
<CommandItemTemplate>
<div style="padding:3px 0px;text-align:right;">
<asp:LinkButton ID="lnkEdit" runat="server" CommandName="EditSelected"
CausesValidation="false" Visible='<%# (!gridComments.MasterTableView.IsItemInserted)&&(gridComments.EditIndexes.Count==0) %>'>
<img style="border:0px;vertical-align:middle;"
alt="" src="CssClass/Images/Edit.gif" />
Edit / View
</asp:LinkButton>
<asp:LinkButton Style="vertical-align: bottom" ID="lnkAdd" runat="server" CommandName="InitInsert"
Visible='<%# !gridComments.MasterTableView.IsItemInserted && gridComments.EditIndexes.Count == 0 %>'>
<img style="border:0px;"
alt="" src="CssClass/Images/AddRecord.gif" />
Leave Reply
</asp:LinkButton>
<asp:LinkButton ID="lnkDelete"
OnClientClick="javascript:return confirm('Delete selected Note?')"
runat="server"
CommandName="DeleteSelected"
CausesValidation="false"
Visible='<%# (!gridComments.MasterTableView.IsItemInserted)&&(gridComments.EditIndexes.Count==0) %>'>
<img style="border:0px;vertical-align:middle;"
alt="" src="CssClass/Images/Delete.gif" />
Delete
</asp:LinkButton>
<asp:LinkButton ID="lnkRefresh1" runat="server" CommandName="RebindGrid">
<img style="border:0px;vertical-align:middle;"
alt="" src="CssClass/Images/Refresh.gif" />
Refresh
</asp:LinkButton>
</CommandItemTemplate>
<EditFormSettings EditFormType="Template">
<FormTemplate>
<table>
<tr>
<td align="center">
Note
</td>
</tr>
<tr>
<td>
<asp:TextBox ID="noteTextBoxChild"
Width="375px"
ReadOnly="false"
onChange="Count(this,700)"
onKeyUp="Count(this,700)"
Height="195px"
runat="server"
TextMode="MultiLine"
MaxLength="700" />
</td>
</tr>
<tr>
<td align="center">
<asp:Button ID="btnUpdate"
Text='<%# (Container is GridEditFormInsertItem) ? "Save" : "Update" %>'
runat="server"
CommandName='<%# (Container is GridEditFormInsertItem) ? "PerformInsert" : "Update" %>'>
</asp:Button>
<asp:Button ID="btnCancel" Text="Cancel"
runat="server" CausesValidation="False"
CommandName="Cancel">
</asp:Button>
</td>
</tr>
</table>
</FormTemplate>
</EditFormSettings>
</telerik:GridTableView>
</DetailTables>
<Columns>
<telerik:GridBoundColumn DataField="NoteID" Visible="false">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="User.UserName" UniqueName="User.UserName" HeaderText="User">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="CreatedDateTime" HeaderText="Date" UniqueName="CreatedDateTime">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="ApplicantNote" HeaderText="Note" UniqueName="ApplicantNote">
</telerik:GridBoundColumn>
</Columns>
<CommandItemTemplate>
<div style="padding:3px 0px;text-align:right;">
<asp:LinkButton ID="lnkEdit" runat="server" CommandName="EditSelected"
CausesValidation="false" Visible='<%# (!gridComments.MasterTableView.IsItemInserted)&&(gridComments.EditIndexes.Count==0) %>'>
<img style="border:0px;vertical-align:middle;"
alt="" src="CssClass/Images/Edit.gif" />
Edit / View
</asp:LinkButton>
<asp:LinkButton Style="vertical-align: bottom" ID="lnkAdd" runat="server" CommandName="InitInsert"
Visible='<%# !gridComments.MasterTableView.IsItemInserted && gridComments.EditIndexes.Count == 0 %>'>
<img style="border:0px;"
alt="" src="CssClass/Images/AddRecord.gif" />
Add Note
</asp:LinkButton>
<asp:LinkButton ID="lnkDelete"
OnClientClick="javascript:return confirm('Delete selected Note?')"
runat="server"
CommandName="DeleteSelected"
CausesValidation="false"
Visible='<%# (!gridComments.MasterTableView.IsItemInserted)&&(gridComments.EditIndexes.Count==0) %>'>
<img style="border:0px;vertical-align:middle;"
alt="" src="CssClass/Images/Delete.gif" />
Delete
</asp:LinkButton>
<asp:LinkButton ID="lnkRefresh1" runat="server" CommandName="RebindGrid">
<img style="border:0px;vertical-align:middle;"
alt="" src="CssClass/Images/Refresh.gif" />
Refresh
</asp:LinkButton>
</CommandItemTemplate>
<EditFormSettings EditFormType="Template">
<FormTemplate>
<table>
<tr>
<td align="center">
Note
</td>
</tr>
<tr>
<td>
<asp:TextBox ID="noteTextBox"
Width="375px"
ReadOnly="false"
onChange="Count(this,700)"
onKeyUp="Count(this,700)"
Height="195px"
runat="server"
TextMode="MultiLine"
MaxLength="700" />
</td>
</tr>
<tr>
<td align="center">
<asp:Button ID="btnUpdate"
Text='<%# (Container is GridEditFormInsertItem) ? "Save" : "Update" %>'
runat="server"
CommandName='<%# (Container is GridEditFormInsertItem) ? "PerformInsert" : "Update" %>'>
</asp:Button>
<asp:Button ID="btnCancel" Text="Cancel"
runat="server" CausesValidation="False"
CommandName="Cancel">
</asp:Button>
</td>
</tr>
</table>
</FormTemplate>
</EditFormSettings>
<NoRecordsTemplate>
<p>No comments have been added</p>
</NoRecordsTemplate>
</MasterTableView>
<ClientSettings >
<Selecting AllowRowSelect ="true" />
</ClientSettings>
</telerik:RadGrid>
</td>
</tr>
</table>
Everything worked great until I added the Edit/View link and when the Edit/View link is clicked I only show Refresh icon.
If TypeOf (e.Item) Is GridCommandItem And e.Item.OwnerTableView.DataSourceID = "SqlDates" Then
Dim dataitem As GridCommandItem = CType(e.Item, GridCommandItem)
Dim hypr As HyperLink = CType(dataitem.FindControl("AddLink"), System.Web.UI.WebControls.HyperLink)
hypr.Attributes(
"onclick") = [String].Format("return ShowEditForm('{0}'", 0)
'editLink.Attributes("onclick") = [String].Format("return ShowEditForm('{0}','{1}');", dataitem("MessageId").Text, e.Item.ItemIndex)
End If
| <asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager> <div> |
| <%-- <telerik:Header runat="server" ID="Header1" NavigationLanguage="CS"> |
| </telerik:Header>--%> |
| <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"> |
| <AjaxSettings> |
| <telerik:AjaxSetting AjaxControlID="RadGrid1"> |
| <UpdatedControls> |
| <telerik:AjaxUpdatedControl ControlID="RadGrid1" LoadingPanelID="RadAjaxLoadingPanel1" /> |
| </UpdatedControls> |
| </telerik:AjaxSetting> |
| </AjaxSettings> |
| </telerik:RadAjaxManager> |
| <telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server"> |
| </telerik:RadAjaxLoadingPanel> |
| </div> |
| <telerik:RadGrid ID="RadGrid1" runat="server" AllowPaging="True" AllowSorting="True" |
| GridLines="None" AutoGenerateColumns="False" Width="400px" PageSize="4" AllowCustomPaging="True" |
| ShowGroupPanel="true" PagerStyle-Position="Bottom" OnPageIndexChanged="RadGrid1_PageIndexChanged" |
| OnSortCommand="RadGrid1_SortCommand" PagerStyle-AlwaysVisible="true" |
| OnGroupsChanging="RadGrid1_GroupsChanging" |
| onpagesizechanged="RadGrid1_PageSizeChanged"> |
| <PagerStyle Mode="NextPrevAndNumeric"></PagerStyle> |
| <MasterTableView> |
| <GroupByExpressions> |
| <telerik:GridGroupByExpression> |
| <SelectFields> |
| <telerik:GridGroupByField FieldAlias="Sex" FieldName="Sex"></telerik:GridGroupByField> |
| </SelectFields> |
| <GroupByFields> |
| <telerik:GridGroupByField FieldName="Sex" SortOrder="Descending"></telerik:GridGroupByField> |
| </GroupByFields> |
| </telerik:GridGroupByExpression> |
| <telerik:GridGroupByExpression> |
| <SelectFields> |
| <telerik:GridGroupByField FieldAlias="Age" FieldName="Age"></telerik:GridGroupByField> |
| </SelectFields> |
| <GroupByFields> |
| <telerik:GridGroupByField FieldName="Age" SortOrder="Descending"></telerik:GridGroupByField> |
| </GroupByFields> |
| </telerik:GridGroupByExpression> |
| <telerik:GridGroupByExpression> |
| <SelectFields> |
| <telerik:GridGroupByField FieldAlias="Name" FieldName="Name"></telerik:GridGroupByField> |
| </SelectFields> |
| <GroupByFields> |
| <telerik:GridGroupByField FieldName="Name" SortOrder="Descending"></telerik:GridGroupByField> |
| </GroupByFields> |
| </telerik:GridGroupByExpression> |
| </GroupByExpressions> |
| <RowIndicatorColumn> |
| <HeaderStyle Width="20px"></HeaderStyle> |
| </RowIndicatorColumn> |
| <ExpandCollapseColumn> |
| <HeaderStyle Width="20px"></HeaderStyle> |
| </ExpandCollapseColumn> |
| <Columns> |
| <telerik:GridBoundColumn DataField="Name" HeaderText="Name" UniqueName="column" SortExpression="Name"> |
| </telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="Sex" HeaderText="Sex" UniqueName="column1" SortExpression="Sex"> |
| </telerik:GridBoundColumn> |
| <telerik:GridBoundColumn DataField="Age" DataType="System.Int32" HeaderText="Age" |
| SortExpression="Age" UniqueName="column2"> |
| </telerik:GridBoundColumn> |
| </Columns> |
| </MasterTableView> |
| <ClientSettings ReorderColumnsOnClient="True" AllowDragToGroup="True" AllowColumnsReorder="True"> |
| <Selecting AllowRowSelect="True"></Selecting> |
| <Resizing AllowRowResize="True" AllowColumnResize="True" EnableRealTimeResize="True" |
| ResizeGridOnColumnResize="False"></Resizing> |
| </ClientSettings> |
| <GroupingSettings ShowUnGroupButton="true" /> |
| </telerik:RadGrid> |
| public class Person |
| { |
| public String Name { get; set; } |
| public int Age { get; set; } |
| public SexEnum Sex { get; set; } |
| } |
| public enum SexEnum |
| { |
| Male, |
| Female |
| } |
Thank you
protected void scheduleGridView_DataBound(object sender, EventArgs e)
{
// Set the correct label on the data grid using session variable
if (clinTypeID == 1) //MD
{
scheduleGridView.Columns[0].HeaderText =
"MD";
}
else //CRNA
{
scheduleGridView.Columns[0].HeaderText =
"CRNA";
}}
Exactly the same code is used with the RadGrid:
protected void scheduleRadGrid_DataBound(object sender, EventArgs e)
{
// Set the correct label on the RadGrid using session variable
if (clinTypeID == 1) //MD
{
scheduleRadGrid.Columns[0].HeaderText =
"MD";
}
else //CRNA
{
scheduleRadGrid.Columns[0].HeaderText =
"CRNA";
}}
This does not work for the RadGrid. I set a breakpoint in this code and confirmed that the HeaderText value IS being changed. However, this is not reflected when the control is rendered. What could I be missing? Thanks!
Tom Stanley
| <telerik:RadToolTipManager Width="215px" Skin="Sunset" Height="260px" |
| RelativeTo="Element" AutoTooltipify="false" HideEvent="FromCode" ShowEvent="FromCode" ID="RadToolTipManager2" runat="server" OffsetX="15" Position="MiddleRight" |
| OnAjaxUpdate="RadToolTipmanager1_AjaxUpdate"> |
| </telerik:RadToolTipManager> |
| function OnClientMouseOver(sender, args) { |
| var nodeElem = args.get_node(); |
| if (nodeElem.get_level() != 0) { |
| var node = nodeElem.get_textElement(); |
| var tooltipManager = $find("<%= RadToolTipManager2.ClientID%>"); |
| //If the user hovers the image before the page has loaded, there is no manager created |
| if (!tooltipManager) return; |
| //Find the tooltip for this element if it has been created |
| var tooltip = tooltipManager.getToolTipByElement(node); |
| //Create a tooltip if no tooltip exists for such element |
| if (!tooltip) { |
| if (nodeElem.get_attributes().getAttribute("userdefined") == "yes") { |
| tooltip = tooltipManager.createToolTip(node); |
| tooltip.set_value(nodeElem.get_attributes().getAttribute("NodeID")); |
| tooltip.show(); |
| } |
| } |
| } |
| } |
| protected void RadToolTipmanager1_AjaxUpdate(object sender, ToolTipUpdateEventArgs e) |
| { |
| ColumnDetails details = (ColumnDetails)this.LoadControl("ColumnDetails.ascx"); |
| details.NodeID = e.Value; |
| RadTreeNode oNode = rtvAssignSelectedTree.Nodes[0].Nodes.FindNodeByAttribute("NodeID", e.Value); |
| details.rtvSelectedTree = rtvAssignSelectedTree; |
| details.rttNodeToolTip = RadToolTipManager2; |
| string Text = oNode.Text.Substring(0, oNode.Text.IndexOf('(')); |
| string Length = oNode.Text.Substring(oNode.Text.IndexOf(','), oNode.Text.IndexOf(')') - oNode.Text.IndexOf(',')); |
| ((TextBox)details.FindControl("txtColumnName")).Text = Text; |
| ((TextBox)details.FindControl("txtLength")).Text = Length; |
| e.UpdatePanel.ContentTemplateContainer.Controls.Add(details); |
| } |