TreeView控件的適配器確實有一些viewstate處理,但是您正確選擇的節點屬性在回發時爲null。
如果你在瀏覽器狀態欄上會顯示類似懸停在根節點:
javascript:__doPostBack('controlid', 'eventargument');
//or
javascript:__doPostBack('tv', 'srootnodevalue\\childnodevalue');
你能趕上在後面描述你所訪問的節點及其作爲值的代碼事件參數像'node \ value'這樣的字符串。
if (Request.Form["__EVENTTARGET"] != null && Request.Form["__EVENTARGUMENT"] != null)
{
if (Request.Form["__EVENTTARGET"].Equals("tv")) //tv is my treeview control id, and the first parameter in __doPostBack()
Tv_SelectedNodeChanged(Request.Form["__EVENTARGUMENT"]);
}
protected void Tv_SelectedNodeChanged(string argument)
{
//process the argument string 'srootnodevalue\childnodevalue'
}
的樹狀視圖狀態似乎意識到它的適配器的表示所選擇的節點作爲類=「ASPNET-的TreeView葉ASPNET,TreeView控件,選定的」,當它呈現。
不過,可能有這樣做的更好的方式...
也可以看看這個帖子... http://cssfriendly.codeplex.com/Thread/View.aspx?ThreadId=66248 – CRice 2009-10-26 05:30:34
對不起大家 - 還沒有回到這個特殊的問題呢。我仍然需要解決這個問題,但mgmt讓我現在正在運行另外15個不同的方向。 – 2010-01-13 20:51:18