#c# #asp.net #telerik #rad-controls #radtreeview
#c# #asp.net #telerik #rad-элементы управления #radtreeview
Вопрос:
Как мне получить текст щелкнутых узлов в RadTreeView в C #? Я добавил событие OnNodeClick, но оно не запускается. Пожалуйста, скажите мне, как получить текст щелкнутого узла в C #.
ASP.NET:
<telerik:RadTreeView ID="CandidatesTreeMenu" OnClientNodeClicked="ClientCandidateMenuNodeClicked" Skin="Vista" runat="server" OnNodeClick="CandidatesTreeMenu_NodeClick">
<Nodes>
<telerik:RadTreeNode Text="Added" NavigateUrl="NewCandidateList.aspx?type=recently">
</telerik:RadTreeNode>
<telerik:RadTreeNode Text="Candidates" NavigateUrl="NewCandidateList.aspx?type=My">
</telerik:RadTreeNode>
</Nodes>
</telerik:RadTreeView>
Код позади:
protected void CandidatesTreeMenu_NodeClick(object sender, RadTreeNodeEventArgs e)
{
try
{
string CheckNodeName = e.Node.Text;
}
catch { }
}
Ответ №1:
Вам необходимо выполнить повторную привязку при каждом сообщении обратно в событии пользовательского элемента управления page_load. Вот код, который я использовал в ascx:
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
CandidatesTreeMenu.NodeClick = CandidatesTreeMenu_NodeClick;
}
protected void CandidatesTreeMenu_NodeClick(object sender, RadTreeNodeEventArgs e)
{
string CheckNodeName = e.Node.Text;
}
</script>
<telerik:RadScriptBlock runat="server">
<script type="text/javascript">
function ClientCandidateMenuNodeClicked(sender, args) {
// noop
}
</script>
</telerik:RadScriptBlock>
<telerik:RadTreeView ID="CandidatesTreeMenu" OnClientNodeClicked="ClientCandidateMenuNodeClicked" Skin="Vista" runat="server">
<Nodes>
<telerik:RadTreeNode Text="Added" NavigateUrl="NewCandidateList.aspx?type=recently">
</telerik:RadTreeNode>
<telerik:RadTreeNode Text="Candidates" NavigateUrl="NewCandidateList.aspx?type=My">
</telerik:RadTreeNode>
</Nodes>
</telerik:RadTreeView>