2010-08-23 37 views
2

有没有方法可以将.ascx文件添加到站点地图,以便根据访问的最后一个来加载/卸载控件?问题是我有一个页面,其中包含几个控件相互之间放置,我想只是能够跳转他们之间的网站地图,而不是为他们创建一个新的页面...这就是我(请参阅产品列表,产品详细信息):向站点地图添加.ASCX项目

<siteMapNode url="Default.aspx" title="Home" description="Home Page of _____"> 

    <siteMapNode url="UserFunctions/ChangePassword.aspx" title="Change Password" description="Change Password" /> 
    <siteMapNode url="Setup/EditUsers.aspx" title="Edit Users" description="Edit Users" /> 
    <siteMapNode url="Setup/EditOther.aspx" title="Edit Other" description="Edit Other" /> 

    <siteMapNode url="DataEntry/EditPartners.aspx" title="Partners" description="Partners"> 
     <siteMapNode url="WebControls/Product List.ascx" title="Product List" description="Product List" > 
      <siteMapNode url="WebControls/ProductDetail.ascx" title="Product Detail" description="Product Detail" /> 
     </siteMapNode> 
    </siteMapNode> 

</siteMapNode> 

回答

2

不,用户控件只存在于页面中;您可以参考product.aspx?category =,因此您可以在站点地图中定义查询字符串值,并根据该值动态加载正确的用户控件。这将工作,但不直接引用用户控件。

HTH。

+0

谢谢,这很有道理。作为临时解决方案,我用一个小小的表演/隐藏动作(丑陋)来解决问题。尽管如此,我们会将控件分割成单独的页面。 – SimpsOff 2010-11-12 21:48:06