現在、マスターページにSiteMapDataSourceをロードするaspメニューコントロールがあります。サイトマップノードの1つは、一般的な「Tools.aspx」コンテンツページを開く「Tools」です。
<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode url="~/Default.aspx" title="Home" description="">
<siteMapNode url="Tools.aspx" title="Tools" description="" />
</siteMapNode>
</siteMap>
「Tools.aspx」ページには、ユーザーを別のコンテンツページ「Translator.aspx」に移動するための画像ボタンが含まれています。このページに移動すると、[ツール]メニュー項目が選択されなくなります。私の質問は、「Translator.aspx」ページ内のマスターページから「ツール」メニュー項目を選択するにはどうすればよいですか?
「Translator.aspx」ページの読み込み内で次の方法を試しました。
protected void Page_Load(object sender, EventArgs e)
{
//check if logged in
if (!Page.IsPostBack)
{
Menu mp_Menu = (Menu)Page.Master.FindControl("mnuMaster");
foreach (MenuItem mi in mp_Menu.Items)
{
if (mi.Text == "Tools")
{
mi.Selected = true;
}
}
}
}
これは機能せず、0個のメニュー項目が返されるようです。
誰かがこの問題に光を当てることができれば本当にありがたいです。ありがとう。