- PR -

SiteMapのTreeViewで、非表示ノードを作る方法

1
投稿者投稿内容
Dr.Mancini
常連さん
会議室デビュー日: 2003/01/23
投稿数: 35
投稿日時: 2006-01-10 11:24
いつも大変お世話になっております。
ASP.NET2.0のサイトマップについての質問です。

Web.sitemapで、
<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
 <siteMapNode title="HOME" url="/index.aspx">
  <siteMapNode title="会社概要" url="company.aspx" />
  <siteMapNode title="沿革" url="enkaku.aspx" />
  <siteMapNode title="お問合せ" url="toiawase.aspx">
   <siteMapNode title="お問合せ完了" url="toiawase_comp.aspx" />
  </siteMapNode>
 </siteMapNode>
</siteMap>

といったSiteMapファイルを作成しました。

そして各ページには、
<asp:TreeView ID="TreeView1" runat="server" DataSourceID="SiteMapDataSource1" />
を設置し、TreeViewにより全体のリンクがメニューになっており、
また各ページ上部には
<asp:SiteMapPath ID="SiteMapPath1" runat="server" />
によって階層リンクが設置され、現在の階層がわかるようになっています。

今回問題になったのは「お問合せ」の部分で、
<asp:SiteMapPath>では「お問合せ完了」を表示したい一方、
<asp:TreeView>ではいきなり「お問合せ完了」ページへ行かれても困るので、
「お問合せ完了」のノードは非表示にしたいということです。

イメージ的には、

-----SiteMapPath-----
 HOME > お問合せ > お問合せ完了

-----TreeView-----
■HOME
 ┣会社概要
 ┣沿革
 ┗お問合せ

と表示されることを希望しています。

解決方法やヒントを教えて頂けると助かります。
何卒よろしくお願い申し上げます。



じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-01-10 12:02
SiteMapPath クラスのメンバに Visible プロパティがありますが、これで何とか制御できませんか?

  SiteMapPath Properties

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
Dr.Mancini
常連さん
会議室デビュー日: 2003/01/23
投稿数: 35
投稿日時: 2006-01-10 14:29
お返事ありがとうございます、じゃんぬねっと様。

SiteMapPathのVisibleプロパティは、SiteMapPathのコントロールそのものの表示/非表示を制御するので、今回の要件は満たせません。

ノード単位で制御できればいいのですが・・・。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-01-10 14:37
引用:

Dr.Manciniさんの書き込み (2006-01-10 14:29) より:

SiteMapPathのVisibleプロパティは、SiteMapPathのコントロールそのものの表示/非表示を制御するので、今回の要件は満たせません。
ノード単位で制御できればいいのですが・・・。


すいません、貼り付けるものを真剣に間違えていました。

  SiteMapNodeItem Properties

これを貼るつもりだったです...

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
Dr.Mancini
常連さん
会議室デビュー日: 2003/01/23
投稿数: 35
投稿日時: 2006-01-10 16:15
なるほど、SiteMapNodeItemを使うことは分かりました。
ですが、色々と情報を探し回っては見たのですが、
参考情報が少なくプログラムの方法までは分かりませんでした。
また自分なりに調べてみたいと思います。
ありがとうございました。

1

スキルアップ/キャリアアップ(JOB@IT)