C# 检查TreeView是否选择了任何节点?
我在我的aspx页面上有一个treeview控件和一个按钮。根据treeview节点的选择,我想显示和隐藏该按钮。但是当最初加载页面时,没有任何已选择的节点处于生成异常的状态。有人能告诉我,我如何找到是否已选择任何节点吗C# 检查TreeView是否选择了任何节点?,c#,asp.net,C#,Asp.net,我在我的aspx页面上有一个treeview控件和一个按钮。根据treeview节点的选择,我想显示和隐藏该按钮。但是当最初加载页面时,没有任何已选择的节点处于生成异常的状态。有人能告诉我,我如何找到是否已选择任何节点吗 //Here I want to check is there any selected node "ApplicationTree.Nodes.Count>0" <%if(ApplicationTree.Nodes.Count>0)
//Here I want to check is there any selected node "ApplicationTree.Nodes.Count>0"
<%if(ApplicationTree.Nodes.Count>0)
{%>
<%
//Here it is generating exception because initially no any node is selected
IsReviewPending = view_access.IsWaitingForViewAccess(ApplicationTree.SelectedNode.Value, Session["empCode"].ToString());
if (IsReviewPending)
{
CanReviewAccess = true;
}
else
{
CanReviewAccess = false;
}
%>
<%if(CanReviewAccess)
{%>
<asp:Button ID="btn_Review_Access" OnClick="btn_Review_Access_Click" runat="server" BackColor="#C6304A" ForeColor="White" Text="Confirm Access Review" Width="200px" CssClass="center3" />
<%} %>
<%} %>
//这里我想检查是否有任何选定的节点“ApplicationTree.Nodes.Count>0”
0)
{%>
我找到了解决方案:)
//这是我的代码
这是因为您试图访问该节点的空值。可能引入空检查可以解决您的问题。我没有上下文意识,但如果SelectedNode为空,是否希望完全忽略此操作?如果是,则引入if(ApplicationTree.SelectedNode!-null)会解决你的问题的不,我试过了,但同样的例外!!!谢谢你的支持
//Here is my Code
<%
bool HasSelectedNode = false;
//i iterated through the overall nodes of the tree and checked any of the node is selected or not
for (int i = 0; i < ApplicationTree.Nodes.Count;i++ )
{
if(ApplicationTree.Nodes[i].Selected==true)
{
HasSelectedNode = true;
}
}
%>
<%if(HasSelectedNode)
{%>
<%
IsReviewPending = view_access.IsWaitingForViewAccess(ApplicationTree.SelectedNode.Value, Session["empCode"].ToString());
// IsReviewPending = true;
if (IsReviewPending)
{
CanReviewAccess = true;
}
else
{
CanReviewAccess = false;
}
%>
<%if(CanReviewAccess)
{%>
<asp:Button ID="btn_Review_Access" OnClick="btn_Review_Access_Click" runat="server" BackColor="#C6304A" ForeColor="White" Text="Confirm Access Review" Width="200px" CssClass="center3" />
<%} %>
<%} %>