Da Sie nicht direkt eine Masterseite Ich gehe davon aus sehen können, Sie haben zwei Seiten, die eine gemeinsame Master-Seite verwenden. Ich gehe auch davon aus, dass diese Masterseite eine Dropdown-Liste und eine Baumansicht-Sitemap anzeigt.
Basierend auf diesem würde ich denken, dass was am meisten passiert ist, dass Ihre Treeview ist klar, alte HTML-Links (d. H. <a href='http://stackoverflow.com'>...
). Wenn Sie darauf klicken, führt Ihr Browser eine Anfrage für die zweite untergeordnete Seite aus. Standardmäßig werden keine Daten von der ersten untergeordneten Seite an die zweite übergeben.
Es gibt verschiedene Möglichkeiten, dieses Verhalten zu ändern. Zuerst sollten Sie die AutoPostBack
Eigenschaft auf true und das Handle SelectedIndexChanged
Ereignis auf Ihrer Dropdownliste festlegen. In diesem Fall können Sie den Wert des Dropdown-Menüs speichern, damit es später wiederhergestellt werden kann.
Der einfachste Weg, um diesen Wert zu speichern, ist wahrscheinlich, es in die Sitzung zu setzen.
Session["myvar"] = dropdown.SelectedIndex;
Ihre Masterseite können diesen Wert wiederherzustellen, wenn die untergeordnete Seite Lasten wie etwas zu tun:
if (!IsPostBack && Session["myvar"] != null)
dropdown.SelectedIndex = (int)Session["myvar"];
Eine weitere Option den Wert auf die Abfragezeichenfolgeflag jeder URL in der Baumansicht hinzuzufügen wäre.
Im Gegensatz zu seinem Namen ist eine Masterseite wirklich ein Kind Steuerelement auf der Seite. –