您的位置:首页 > 编程语言 > ASP

ASP.NET 2.0(C#)中使用webpart系列控件(4)

2008-04-07 13:50 701 查看
ASP.NET 2.0(C#)中使用webpart系列控件(4)

1、往窗体中拖拉一个catlogzone控件,如下图所视。


   
     2、往该catlogzone控件区域中,再拖放三个Webpart系列的控件,分别是DeclarativeCatalogPart, PageCatalogPart, and ImportCatalogPart,如下图所示。其中,DeclarativeCatalogPart控件的作用是,显示目前页面上有哪些可以用的webpart控件;PageCatalogPart的作用是,可以让用户通过勾选的方式,选定将哪些控件添加转移到其他webpart区域中去。ImportCatalogPart则可以通过外部磁盘文件的方式,加载其他做好了的webpart部件。



     3、在RadioButtonList区域中,修改以下代码,增添一个catalog display的显示模式:
  
  <ASP:RadioButtonList ID="rblMode" runat="server" AutoPostBack="True">
  <asp:ListItem>Browse Display Mode</asp:ListItem>
  <asp:ListItem>Design Display Mode</asp:ListItem>
  <asp:ListItem>Catalog Display Mode</asp:ListItem>
  </asp:RadioButtonList>
  
    然后,在code-behind的代码中,将代码修改为如下:
  
  protected void RadioButtonList1_SelectedIndexChanged(object sender, EventArgs e)
    {
        switch(rblMode.SelectedIndex)
        {
    case 0 :
        {
        WebPartManager1.DisplayMode =WebPartManager.BrowseDisplayMode ;
       break ;
        }
      case 1 :
        WebPartManager1.DisplayMode = WebPartManager.DesignDisplayMode;
        break ;
      case 2 :
          WebPartManager1.DisplayMode = WebPartManager.CatalogDisplayMode;
          break;
        }
    }   
    4、在DeclarativeCatalogPart任务菜单上,点击右上角的智能感知按钮,然后选"edit templates"的链接,进入模版编辑状态,如下图: 
  

 
再往其中的webpartstemplate区域中拖拉一个google.ascx控件,如下图,这将允许用户在运行时,可以自由地往页面增加这样的google搜索控件。 


   
   5、然后修改代码如下:
  
  <ZoneTemplate>
  <asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1" runat="server">
   <WebPartsTemplate>
    <uc1:Google title="Google Search" ID="Google2" runat="server" />
   </WebPartsTemplate>
  </asp:DeclarativeCatalogPart>
  
    6、运行程序,可以看到,当选择catalog display mode时,会显示如下图所示的catalog zone,其中列出了当前可用的有哪些webpart控件,我们可以把这个google的控件加到其他的webpart区域,也可以尝试将已经存在的webpart控件关闭,然后在catalog zone区域中的控件列表中,把它们再加回到页面中去。    
  

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息