<radG:RadGrid TabIndex="11" ID="RadgWelcome" Width="100%" Skin="Glassy" SkinsPath="~/App_Themes/"
EnableAJAX="True" AutoGenerateColumns="False" LoadingTemplateTransparency="20"
ItemStyle-Height="20px" AlternatingItemStyle-Height="20px" AllowMultiRowEdit="false"
AllowMultiRowSelection="true" OnNeedDataSource="RadgWelcome_NeedDataSource" OnInsertCommand="RadgWelcome_InsertCommand"
OnUpdateCommand="RadgWelcome_UpdateCommand" OnDeleteCommand="RadgWelcome_DeleteCommand"
OnItemDataBound="RadgWelcome_ItemDataBound" MasterTableView-RetrieveAllDataFields="true"
EnableOutsideScripts="true" EnableAJAXLoadingTemplate="false" runat="server" AllowSorting="true"
PageSize="10" AllowPaging="true">
<MasterTableView Width="100%" HorizontalAlign="NotSet" AutoGenerateColumns="false"
CssClass="master" CommandItemStyle-CssClass="masteritem" CommandItemDisplay="Top">
<PagerStyle Mode="NumericPages" CssClass="pager" />
<%
--Link Button to add a new Division--%>
<CommandItemTemplate>
<asp:LinkButton ID="lnkAddNew" runat="server" CommandName="InitInsert" Visible='<%# !RadgWelcome.MasterTableView.IsItemInserted %>'>
<img style="border:0px" alt="" src="RadControls/Grid/Skins/Glassy/AddRecord.gif" />
Add a New Message
</asp:LinkButton>
</CommandItemTemplate>
<Columns>
<%
--Description--%>
<radG:GridTemplateColumn HeaderText="Employee Benefit Center" SortExpression="description"
DataField="description" ItemStyle-HorizontalAlign="left" ItemStyle-VerticalAlign="Middle">
<ItemTemplate>
<%
--<asp:Label ID="lblDesc" runat="server" Text='<%# Eval("description") %>' />--%>
<asp:Literal ID="lblDesc" runat="server" Text='<%# Eval("description") %>' Mode="PassThrough" />
</ItemTemplate>
</radG:GridTemplateColumn>
<radG:GridTemplateColumn SortExpression="description" DataField="description" ItemStyle-HorizontalAlign="left"
ItemStyle-VerticalAlign="Middle">
<ItemTemplate>
<asp:ImageButton ID="lnkButton" runat="server" CommandName="Edit" AlternateText="Edit"
ImageUrl="~/images/edit_icon.gif" />
</ItemTemplate>
</radG:GridTemplateColumn>
<radG:GridTemplateColumn HeaderText="" ItemStyle-Width="60px" ItemStyle-HorizontalAlign="left"
ItemStyle-VerticalAlign="Middle">
<%
--Delete Button--%>
<ItemTemplate>
<asp:ImageButton ID="imgbtnDelete" runat="server" ImageUrl="images/delete_icon.gif"
CommandName="Delete" OnClientClick="return confirm('Are you sure you want to delete?');"
CommandArgument='<%# Eval("id") %>' ToolTip="Delete" />
</ItemTemplate>
</radG:GridTemplateColumn>
</Columns>
<EditFormSettings EditFormType="Template">
<FormTemplate>
<fieldset>
<%
--Description--%>
<label for="Directory" class="formlabel left">
<span class="reqfld">*</span>Message Text</label>
<asp:HiddenField ID="hdnDesc" runat="server" Value='<%#Bind("description") %>' />
<radE:RadEditor runat="server" ID="txtDesc" Height="400px" ShowSubmitCancelButtons="false"
ShowPreviewMode="false" ShowHtmlMode="false" StripAbsoluteImagesPaths="false">
<content>
</content>
</radE:RadEditor>
<%
--Insert,Update and Cancel Buttons--%>
<div class="btnpnl">
<asp:Button ID="btnUpdate" CssClass="btn" Text='<%# (Container is GridEditFormInsertItem) ? "Insert" : "Update" %>'
ToolTip='<%# (Container is GridEditFormInsertItem) ? "Insert" : "Update" %>' runat="server"
CommandArgument='<%# Eval("id") %>' CommandName='<%# (Container is GridEditFormInsertItem) ? "PerformInsert" : "Update" %>'
TabIndex="0"></asp:Button>
<asp:Button ID="btnCancel" Text="Cancel" CssClass="btn" runat="server" CausesValidation="False"
CommandName="Cancel" ToolTip="Cancel" TabIndex="0"></asp:Button>
</div>
</fieldset>
</FormTemplate>
</EditFormSettings>
</MasterTableView>
</radG:RadGrid>
CODE BEHIND:
protected
void RadgWelcome_ItemDataBound(object sender, GridItemEventArgs e)
{
try
{
if (e.Item is GridEditFormItem && e.Item.IsDataBound && e.Item.IsInEditMode)
{
GridEditFormItem gridEditFormItem = (GridEditFormItem)e.Item;
HiddenField hdnDesc = (HiddenField)gridEditFormItem.FindControl("hdnDesc");
RadEditor txtDesc = (RadEditor)gridEditFormItem.FindControl("txtDesc");
txtDesc.Text = hdnDesc.Value;
}
}
catch (Exception ex)
{
lblError.Text = ex.Message;
}
}
<
telerik:RadPanelBar ID="radMenu" Runat="server">
</
telerik:RadPanelBar>
ASCX.VB
Imports
System
Imports System.ComponentModel
Imports System.Text
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.HtmlControls
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts
Imports System.IO
Imports Microsoft.SharePoint
Imports Microsoft.SharePoint.WebControls
Imports Microsoft.SharePoint.WebPartPages
Imports Microsoft.SharePoint.Publishing.Navigation
Imports PublishingWeb = Microsoft.SharePoint.Publishing.PublishingWeb
Imports
PublishingWebCollection = Microsoft.SharePoint.Publishing.PublishingWebCollection
Imports
SPWebTemplate = Microsoft.SharePoint.SPWebTemplate
Imports Microsoft.SharePoint.Publishing
Imports Telerik.Web.UI
Partial
Public Class MOSS_InternetSideMenu
Inherits System.Web.UI.UserControl
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Try
Dim rootWeb As PublishingWeb = PublishingWeb.GetPublishingWeb(SPContext.Current.Site.RootWeb)
Dim defaultPageUrl As String = rootWeb.DefaultPage.ServerRelativeUrl
Dim smnHome As PortalListItemSiteMapNode = DirectCast(PortalSiteMapProvider.CombinedNavSiteMapProvider.FindSiteMapNode(defaultPageUrl), PortalListItemSiteMapNode)
For Each smnTopLevelItem As SiteMapNode In smnHome.ParentNode.ChildNodes
Dim rpi As New RadPanelItem
CreateParentMenuItem(rpi, smnTopLevelItem.Title.ToString, "", smnTopLevelItem.Url.ToString)
radMenu.Items.Add(rpi)
If smnTopLevelItem.HasChildNodes Then
For Each smnChildItem As SiteMapNode In smnTopLevelItem.ChildNodes
Dim rpiChild As New RadPanelItem
CreateSubMenuItem(rpiChild, smnChildItem.Title.ToString, "", rpi, smnChildItem.Url.ToString)
Next
End If
Next
Catch ex As Exception
Response.Write(ex.ToString)
End Try
End Sub
Sub CreateParentMenuItem(ByVal rpi As RadPanelItem, ByVal strItemText As String, ByVal strCssClass As String, ByVal strURL As String)
'adds main menu item
rpi.Items.Clear()
rpi.Text = strItemText
rpi.CssClass = strCssClass
rpi.PostBack =
False
End Sub
Sub CreateSubMenuItem(ByVal rpi As RadPanelItem, ByVal strItemText As String, ByVal strCssClass As String, ByVal rpiParent As RadPanelItem, ByVal strURL As String)
'adds sub menu item
rpi.Items.Clear()
rpi.Text = strItemText
rpi.CssClass = strCssClass
rpi.NavigateUrl = strURL
rpiParent.Items.Add(rpi)
End Sub
The menu displays fine, it just doesn't open. To make sure it wasn't a a coding error, I tried it with a static menu that I know works and got the same result.
Any help would be much appreciated.

How can I search for an item by its text and remove all other nodes out of the hierarchy?
ex:
Computers
--- Programming
----- Web
-------- C#
----- Windows
-------- VB.Net
--- Design
----- Photoshop
----- Fireworks
If the user searches for "VB.Net" it must clean the treeview and display only:
Computers
--- Programming
----- Windows
-------- VB.Net
How can I do this?
And how can I search for nodes by using just part of the text (Wildcard search)?
My default.aspx page, which is being opened using the RadWindow control, has a Cancel button which does not work in closing the window. I try the following, amongst many others, which does not work:
function
Cancel_Clicked()
{
var oWindow = GetRadWindow();
oWindow.close();
}
OR:
function Cancel_Clicked()
{
window.opener = window.radWindow;
window.close();
}
<button onclick="Cancel_Clicked();" class="bButton">Cancel</button>
When I open default.aspx in a separate window, the closing event works with the second Cancel_Clicked() function. But, nothing is successful in closing the default.aspx page when I open it in the RadWindow.