是否需用TreeView1_SelectedNodeChanged ?TreeView1.ResolveUrl("showSelect.aspx?nodname=" + TreeView1.SelectedNode.Text);
Response.Redirect("showSelect.aspx?nodname=" + TreeView1.SelectedNode.Text);好像都不行。我想要的是,不重新打开页面。
Response.Redirect("showSelect.aspx?nodname=" + TreeView1.SelectedNode.Text);好像都不行。我想要的是,不重新打开页面。
不用传 直接拿就行 在你的这个事件中直接取
TreeView t = Page.Master.FindControl("TreeView1") as TreeView;
tt = t.SelectedNode.Text;
试试看
具体来说就是两点:1. 为你的master page设计一个独立自主的属性,例如叫做 SelectedName 属性;2. 这个属性不依赖于内部 TreeView 实现(即使换作用TextBox、Menu、GridView来实现也是一样)。在你的master page中类似于这样设计: public string SelectedName
{
get
{
object x=ViewState["selid"];
return x==null?string.Empty:(string)x;
}
set
{
if (SelectedName!= value)
{
ViewState["selid"] = value;
//todo: 遍历TreeView的节点将Text恰好等于value的选中
}
}
} protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
{
this.SelectedName = this.TreeView1.SelectedNode.Value;
}