Hi there,
I have created a webpart include a RadTreeView in Sharepoint 2010. However, when I open the IE to see webpart , I see following script error:
Message: 'RadTreeView1_NodeClicked' is undefined
Line: 1481
Char: 5
Code: 0
<%@ Assembly Name="$SharePoint.Project.AssemblyFullName$" %>
<%@ Assembly Name="Microsoft.Web.CommandUI, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register Tagprefix="asp" Namespace="System.Web.UI" Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %>
<%@ Import Namespace="Microsoft.SharePoint" %>
<%@ Register Tagprefix="WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="HiTreeViewUserControl.ascx.cs" Inherits="TreeView.HiTreeView.HiTreeViewUserControl" %>
<%@ Register Assembly="Telerik.Web.UI, Version=2011.3.1115.35, Culture=neutral, PublicKeyToken=121fae78165ba3d4"
Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<%@ Register Assembly="Telerik.Web.UI, Version=2011.3.1115.35, Culture=neutral, PublicKeyToken=121fae78165ba3d4"
Namespace="Telerik.Web.Design" TagPrefix="telerik" %>
<
telerik:RadTreeView
ID
=
"RadTreeView1"
Runat
=
"server"
EnableEmbeddedScripts
=
"true"
OnClientNodeClicked
=
"RadTreeView1_NodeClicked"
>
<
DataBindings
>
<
telerik:RadTreeNodeBinding
Expanded
=
"True"
/>
</
DataBindings
>
</
telerik:RadTreeView
>
<
telerik:RadTextBox
ID
=
"Dscp"
Runat
=
"server"
Height
=
"100px"
LabelWidth
=
""
Text
=
"Comment"
TextMode
=
"MultiLine"
Width
=
"325px"
>
</
telerik:RadTextBox
>
<
p
>
</
p
>
<
telerik:RadButton
ID
=
"btnUpdate"
runat
=
"server"
onclick
=
"btnUpdate_Click"
Text
=
"Update"
>
</
telerik:RadButton
>
The Code Behind is such as follow:
using System;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using Telerik.Web.UI;
using System.Data;
using Microsoft.SharePoint;
using Microsoft.SharePoint.WebControls;
namespace TreeView.HiTreeView
{
public partial class HiTreeViewUserControl : UserControl
{
static int selectedItem;
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
BindToDataSet(RadTreeView1);
}
}
private static void BindToDataSet(RadTreeView treeView)
{
try
{
DataSet dataSet = new DataSet();
dataSet.Tables.Add("Table");
dataSet.Tables[0].Columns.Add("ID", typeof(int));
dataSet.Tables[0].Columns.Add("ParentID", typeof(int));
dataSet.Tables[0].Columns.Add("Text", typeof(string));
SPSite spSite = new SPSite(SPContext.Current.Web.Url);
SPWeb spWeb = spSite.OpenWeb();
SPList peopleList = spWeb.Lists["People"];
foreach (SPListItem people in peopleList.Items)
{
DataRow row = dataSet.Tables[0].NewRow();
row["ID"] = people["ID"];
row["Text"] = people["Name"];
if (people["Manager"] != null)
{
int intIndex = Convert.ToInt32(people["Manager"].ToString().IndexOf(';'));
row["ParentID"] = Convert.ToInt32(people["Manager"].ToString().Substring(0, intIndex));
}
dataSet.Tables[0].Rows.Add(row);
}
treeView.DataTextField = "Text";
treeView.DataFieldID = "ID";
treeView.DataFieldParentID = "ParentID";
treeView.DataSource = new HierarchicalDataSet(dataSet, "ID", "ParentID");
treeView.DataBind();
}
catch(Exception ex)
{
}
}
protected void RadTreeView1_NodeClicked(object sender, EventArgs e)
{
SPSite spSite = new SPSite(SPContext.Current.Web.Url);
SPWeb spWeb = spSite.OpenWeb();
SPList peopleList = spWeb.Lists["People"];
foreach (SPListItem people in peopleList.Items)
{
if (people["Name"] != null)
{
if (RadTreeView1.SelectedNode.Text.ToString() == people["Name"].ToString())
{
if (people["Comment"] != null)
{
Dscp.Text = people["Comment"].ToString();
}
else
{
Dscp.Text = "";
}
}
}
}
selectedItem = Convert.ToInt32(RadTreeView1.SelectedNode.Value.ToString());
}
protected void btnUpdate_Click(object sender, EventArgs e)
{
SPSite spSite = new SPSite(SPContext.Current.Web.Url);
SPWeb spWeb = spSite.OpenWeb();
SPListItem itemUpdate = spWeb.Lists["People"].Items[selectedItem];
itemUpdate["Comment"] = Dscp.Text;
itemUpdate.Update();
}
}
}
my email address: kassaiefarshad@yahoo.com