看QUICKSTART 里的个人门户里的代码谁能说说这段代码什么意思啊?

 所属目录:Java   |   类型:技术问答   |   时间:2007-05-21
 问题:

using   system;  
  using   system.web;  
  using   system.collections;  
  using   system.web.ui;  
  using   system.web.ui.htmlcontrols;  
  using   system.web.ui.webcontrols;  
   
  public   class   defaultpage   :   portalmodulepage  
  {  
          public   htmlanchor                       anchordelete;  
          public   htmlanchor                       anchorcustomize;  
          public   htmlanchor                       anchoroptions;  
          public   htmlanchor                       anchoroptions2;  
          public   htmlanchor                       anchoradd;  
          public   label                                 spanadd;  
          public   label                                 spandelete;  
          public   htmlcontainercontrol   pagepanellinks;  
          public   placeholder                     leftuimodules;  
          public   placeholder                     rightuimodules;  
          public   panel                                 login;  
   
          protected     void   page_load(object   sender,   eventargs   e)   {  
   
                  int   pageindex   =   0;  
   
                  if   (request.querystring["_pageindex"]   !=   null)  
                  {  
                          setpageindex(request.querystring["_pageindex"]);  
                          pageindex   =   int32.parse(request.querystring["_pageindex"]);  
                  }  
                  else   if   (request.cookies["_pageindex"]   !=   null)   {  
                          pageindex   =   int32.parse(request.cookies["_pageindex"].value);  
                  }  
   
                  if   (pageindex   !=   0)  
                  {  
                          anchordelete.visible   =   true;  
                          spandelete.visible   =   true;  
                  }  
                  else  
                  {  
                          anchordelete.visible   =   false;  
                          spandelete.visible   =   false;  
                  }  
   
                  anchordelete.href   =   "/restricted/deletepage.aspx";  
                  anchorcustomize.href   =   "/restricted/customize.aspx";  
                  anchoroptions.href   =   "/restricted/options.aspx";  
                  anchoroptions2.href   =   "/restricted/layout.aspx";  
   
                  //   dynamically   construct   page   hyperlink   list  
                  buildpanelinklist(pagepanellinks,   pageindex);  
   
                  //   dynamically   construct   module   list   for   current   page  
                  buildmodulelist(leftuimodules,   userstate["pagemodules_"   +   pageindex   +   "l"]);  
                  buildmodulelist(rightuimodules,   userstate["pagemodules_"   +   pageindex   +   "r"]);  
                  databind();  
          }  
   
          private   void   buildmodulelist(control   parent,   string   modules)   {  
   
                  if   (modules   ==   null)  
                        return;  
   
                  string   []   modulelist   =   modules.split(new   char[]   {;});  
   
                  if   ((userstate["userid"]=="anonymous")&&(parent.id=="leftuimodules"))  
                              login.visible=true;  
   
                  for   (int   i=0;i<modulelist.length;i++)   {  
   
                        string   modulesource   =   modulelist[i];  
   
                        if   ((modulesource   !=   null)&&(modulesource   !=   "")&&(modulesource   !=   "system.dbnull"))   {  
   
                              control   uimodule   =   page.loadcontrol(modulesource);  
   
                              parent.controls.add(new   literalcontrol("<tr><td>"));  
                              parent.controls.add(uimodule);  
                              parent.controls.add(new   literalcontrol("</td></tr>"));  
                        }  
                  }  
          }  
   
          private   void   buildpanelinklist(htmlcontainercontrol   container,   int   currentpageindex)   {  
   
                  string   pagenames   =   userstate["pagenames"];  
   
                  if   (pagenames   ==   null)  
                        return;  
   
                  string   []   pagelist   =   pagenames.split(new   char[]   {   ;   });  
   
                  if   (pagelist.length   >   2)  
                  {  
                          anchoradd.visible   =   false;  
                          spanadd.visible   =   false;  
                  }  
                  else  
                  {  
                          anchoradd.visible   =   true;  
                          spanadd.visible   =   true;  
                  }  
   
                  for   (int   i=0;   i<pagelist.length;   i++)   {  
   
                        if   (pagelist[i]   ==   null)  
                              break;  
   
                        if   (i   ==   currentpageindex)   {  
   
                              container.innerhtml   +=   "<td   align=center   bgcolor="   +   userstate["headcolor"]   +   "   width=20%>";  
                              container.innerhtml   +=   "     <table   bgcolor="   +   userstate["headcolor"]   +   "   border=0   width=100%   cellspacing=0   cellpadding=2>";  
                              container.innerhtml   +=   "         <tr   align=center>";  
                              container.innerhtml   +=   "             <td></a><font   face=arial,   宋体   color=white><b>&nbsp;"+pagelist[i]+"</b></font>&nbsp;</td>";  
                              container.innerhtml   +=   "         </tr>";  
                              container.innerhtml   +=   "     </table>";  
                              container.innerhtml   +=   "</td>";  
                              container.innerhtml   +=   "<td   width=1%>&nbsp;</td>";  
                        }  
                        else   {  
   
                              container.innerhtml   +=   "<td   align=center   bgcolor="   +   userstate["subheadcolor"]   +   "   width=20%>";  
                              container.innerhtml   +=   "     <table   bgcolor="   +   userstate["subheadcolor"]   +   "   border=0   width=100%   cellspacing=0   cellpadding=2>";  
                              container.innerhtml   +=   "         <tr   align=center>";  
                              container.innerhtml   +=   "             <td><font   face=arial,   宋体   size=-1>&nbsp;<a   href=default.aspx?_pageindex="   +   i   +   ">"+pagelist[i]+"</a></font>&nbsp;</td>";  
                              container.innerhtml   +=   "         </tr>";  
                              container.innerhtml   +=   "     </table>";  
                              container.innerhtml   +=   "</td>";  
                              container.innerhtml   +=   "<td   width=1%>&nbsp;</td>";  
                        }  
                  }  
          }  
   
          protected   void   signoff_click(object   sender,   eventargs   e)  
          {  
                setpageindex("0");  
                system.web.security.formsauthentication.signout();  
                response.redirect("/default.aspx");  
          }  
   
          protected   void   addpage_click(object   sender,   eventargs   e)   {  
   
                  if   (string.compare(userstate["userid"],"anonymous")   ==   0)  
                  {  
                          response.redirect("/login.aspx");  
                  }  
                  else  
                  {  
                          string   pagenames   =   userstate["pagenames"]   +   ";new   page";  
                          string[]   pagelist   =   pagenames.split(new   char[]   {   ;   });  
                          int   numpages   =   pagelist.length   -   1;  
                          setpageindex(numpages.tostring());  
                          userstate["pagenames"]   =   pagenames;  
                          response.redirect("/restricted/customize.aspx");  
                  }  
          }  
   
          private   void   setpageindex(string   value)  
          {  
                httpcookie   pageindex   =   new   httpcookie("_pageindex",   value);  
                pageindex.path   =   "/";  
                pageindex.expires   =   new   datetime(2002,   10,   10);  
                response.appendcookie(pageindex);  
          }  
  }  
 

· 网友精彩回答:

发表者:sykpboy

你要每行的註釋嗎

发表者:fengfangfang

buildmodulelist函数用于动态加载用户控件的

发表者:thristian

不知道你哪不明白

.
处理 SSI 文件时出错
© 2006-2008 All Rights Reserved