asp.net – 如何将SiteMap绑定到动态创建的TreeView?
发布时间:2020-12-16 03:36:22 所属栏目:asp.Net 来源:网络整理
导读:如何在运行时将SiteMap绑定到动态创建的TreeView? 解决方法 有几种方法可以做到这一点. 将PlaceHolder放在页面上: asp:PlaceHolder ID="PlaceHolder1" runat="server"/asp:PlaceHolder 现在创建一个TreeView并分配一个已在页面上的SiteMapDataSource: //C
如何在运行时将SiteMap绑定到动态创建的TreeView?
解决方法
有几种方法可以做到这一点.
将PlaceHolder放在页面上: <asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder> 现在创建一个TreeView并分配一个已在页面上的SiteMapDataSource: //Code Behind TreeView tv1 = new TreeView(); tv1.DataSourceID = "SiteMapDataSource1"; PlaceHolder1.Controls.Add(tv1); //aspx <asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server" /> 或者您可以以编程方式分配SiteMap: // Create an instance of the XmlSiteMapProvider class. XmlSiteMapProvider testXmlProvider = new XmlSiteMapProvider(); NameValueCollection providerAttributes = new NameValueCollection(1); providerAttributes.Add("siteMapFile","Web2.sitemap"); // Initialize the provider with a provider name and file name. testXmlProvider.Initialize("testProvider",providerAttributes); // Call the BuildSiteMap to load the site map information into memory. testXmlProvider.BuildSiteMap(); SiteMapDataSource smd = new SiteMapDataSource(); smd.Provider = testXmlProvider; TreeView tv2 = new TreeView(); tv2.DataSource = smd; tv2.DataBind(); //Important or all is blank PlaceHolder1.Controls.Add(tv2); 以编程方式设置SiteMap还允许您根据业务规则切换文件. 这也可以通过Web.Config完成: <configuration> <!-- other configuration sections --> <system.web> <!-- other configuration sections --> <siteMap> <providers> <add name="SiteMap1" type="System.Web.XmlSiteMapProvider" siteMapFile="~/Web.sitemap" /> <add name="SiteMap2" type="System.Web.XmlSiteMapProvider" siteMapFile="~/Web2.sitemap" /> </providers> </siteMap> </system.web> </configuration> 然后在你的aspx页面中只需切换提供程序: <asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server" SiteMapProvider="SiteMap2" /> 希望这可以帮助 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – jQuery模态窗体对话框回发问题
- asp.net-core – ASP.NET MVC6脚手架在BETA 8中不起作用
- asp.net-mvc – 为什么HttpPostedFile不像广告和缓冲区下载
- asp.net-mvc – 使用ASP.NET MVC,如何在外部控制器上显示错
- asp.net-mvc – RavenDB部署问题
- asp.net-mvc – 远程验证OnBlur和空字符串
- 如何在Asp.Net页面中包含Javascript文件
- asp.net – 异步HttpWebRequest,从Web应用程序中无需等待
- asp.net-mvc – ViewBag的重点是什么?
- 在ASP经典中编写JavaScript
推荐文章
站长推荐
- asp.net-mvc – ASP.NET MVC – 如何获取一个动作
- asp.net – WCF:是否有一个属性要在OperationCo
- asp.net-mvc – ASP.NET MVC模型绑定器的问题
- asp.net-mvc – ASP.Net 5 project.json脚本命令
- 使用ASP.NET MVC捆绑和缩小模块化JavaScript(Req
- asp.net – 获取当前以aspnet mvc成员身份登录的
- asp-classic – ASP Classic中的溢出
- asp.net-mvc – 带MVC结果的Response.Flush无效
- asp如何判断浏览器类别 userAgent信息
- asp.net – Web配置转换不适用于Visual Studio o
热点阅读