动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
   .Net → 阅读文章

 自动生成SERVER CONTROLS在程序里的应用

作者:cooljack 来源:chinaasp 
阅读 数 234 人次 , 2001-9-21 

private string listFolder(EASYMAILIMAP4Lib.EasyMailIMAP4 IMAP4,string strFolder,int perpage)
{
TableRow r;
TableCell c;
int x,pages,pgnum,start,end;
string str1;

x = IMAP4.SelectMailbox(strFolder);
if(x != 0)
{
IMAP4.CreateMailbox(strFolder);
return "(Created!)";
}
else
{

r = new TableRow();
c = new TableCell();
str1 = "当前邮箱 "+strFolder+" ";
str1 = str1+"共有邮件 "+IMAP4.MessageCount+" 封";
Folder_Info.Text = str1;

if(IMAP4.MessageCount==0)
{
return "No Message";
}

if((IMAP4.MessageCount%perpage) ==0 )
{
pages=IMAP4.MessageCount/perpage;
}
else
{
pages=(int)IMAP4.MessageCount/perpage+1;
}

pgnum=1;
try
{
pgnum=Convert.ToInt32(Request.QueryString["pg"].ToString());
}
catch
{
pgnum=1;
}


if(pgnum>1)
{
end=pgnum*perpage;
start=end-perpage+1;
}
else
{
end=perpage;
start=1;
}


x = IMAP4.DownloadEnvelopes(start, end, 0);

if(x != 0)
{
return "(Error:"+x+")";
}

r = new TableRow();

c = new TableCell();
c.Controls.Add(new LiteralControl(""));
c.Width=15;
r.Cells.Add(c);

c = new TableCell();
c.Controls.Add(new LiteralControl(""));
c.Width=15;
r.Cells.Add(c);

c = new TableCell();
c.Controls.Add(new LiteralControl("发件人"));
c.Attributes.Add("nowrap","true");
c.Attributes.Add("align","center");
c.Width=80;
r.Cells.Add(c);

c = new TableCell();
c.Controls.Add(new LiteralControl("主题"));
c.Attributes.Add("align","center");
r.Cells.Add(c);

c = new TableCell();
c.Controls.Add(new LiteralControl("日期"));
c.Attributes.Add("align","center");
c.Width=120;
r.Cells.Add(c);

c = new TableCell();
c.Controls.Add(new LiteralControl("大小"));
c.Width=40;
c.Attributes.Add("align","center");
r.Cells.Add(c);

c = new TableCell();
c.Controls.Add(new LiteralControl("附"));
c.Attributes.Add("align","center");
c.Width=10;
r.Cells.Add(c);
r.BackColor=System.Drawing.Color.FromName("#6699cc");
r.ForeColor=System.Drawing.Color.WhiteSmoke;
listTable.Rows.Add(r);

EASYMAILIMAP4Lib.IEMIMAP4Envelopes pEnvelopes;
pEnvelopes= (EASYMAILIMAP4Lib.IEMIMAP4Envelopes) IMAP4.Envelopes ;

EASYMAILIMAP4Lib.IEMIMAP4Message pMessage;
EASYMAILIMAP4Lib.IEMIMAP4Attachments pAttachments;
IEnumerator e = pEnvelopes.GetEnumerator();

CheckBox o;
foreach(EASYMAILIMAP4Lib.IEMIMAP4Envelope pEnvelope in pEnvelopes)
{
IMAP4.DownloadMessage(pEnvelope.IMAPID,1);
pMessage = (EASYMAILIMAP4Lib.IEMIMAP4Message) IMAP4.Message;

r = new TableRow();

c = new TableCell();
o = new CheckBox();
o.ID=pEnvelope.IMAPID.ToString();
//MailBoxesform.Controls.Add(o);

//str1="<input type=\"checkbox\" name=\"chk" + pEnvelope.IMAPID.ToString() + "\" class=\"in1\" style=\"width:15px;height:15px\">";
//c.Controls.Add(new LiteralControl(""));
c.Controls.Add(o);
c.Attributes.Add("align","center");
r.Cells.Add(c);

c = new TableCell();
if (pMessage.Priority.ToString()=="1")
{
str1="<font color=Red style=\"width:15px;height:15px\">!</font>";
}
else
{
str1="  ";
}
c.Controls.Add(new LiteralControl(str1));
c.Attributes.Add("align","right");
r.Cells.Add(c);

c = new TableCell();
c.Controls.Add(new LiteralControl(pEnvelope.From));
c.Attributes.Add("nowrap","true");
c.Width=80;
r.Cells.Add(c);

c = new TableCell();
str1 = "<a href=\"viewdraft.aspx?folder="+strFolder+"&imapid=" + pEnvelope.IMAPID.ToString() + "\">"+pEnvelope.Subject+"</a>";
c.Controls.Add(new LiteralControl(str1));
r.Cells.Add(c);

c = new TableCell();
c.Controls.Add(new LiteralControl(pEnvelope.Date.Substring(0,20)));
r.Cells.Add(c);

c = new TableCell();
if (pEnvelope.Size/1000<1)
{
c.Controls.Add(new LiteralControl(pEnvelope.Size.ToString()+"B"));
}
else
{
if (pEnvelope.Size/1000000<1)
{
c.Controls.Add(new LiteralControl((pEnvelope.Size/1000).ToString()+"K"));
}
else
{
c.Controls.Add(new LiteralControl((pEnvelope.Size/1000).ToString()+"M"));
}
}
c.Attributes.Add("align","right");
r.Cells.Add(c);

c = new TableCell();
pAttachments = (EASYMAILIMAP4Lib.IEMIMAP4Attachments) pMessage.Attachments;
if(pAttachments.Count>0)
{
c.Controls.Add(new LiteralControl("有"));
}
else
{
c.Controls.Add(new LiteralControl("无"));
}
c.Attributes.Add("align","center");
r.Cells.Add(c);

listTable.Rows.Add(r);

}

r = new TableRow();
c = new TableCell();
str1 = "<a style=\"TEXT-DECORATION: none;\" href=\"Drafts.aspx?pg=1\"> << </a> ";
if(pgnum==1)
{
str1 = str1+"< ";
}
else
{
str1 = str1+"<a style=\"TEXT-DECORATION: none;\" href=\"Drafts.aspx?pg=" + (pgnum-1) + "\"> < </a> ";
}
if(pgnum==pages)
{
str1 = str1+"> ";
}
else
{
str1 = str1+"<a style=\"TEXT-DECORATION: none;\" href=\"Drafts.aspx?pg=" + (pgnum+1) + "\"> > </a> ";
}
str1 = str1+"<a style=\"TEXT-DECORATION: none;\" href=\"Drafts.aspx?pg=" + pages+ "\"> >> </a> ";
c.Controls.Add(new LiteralControl(str1));
c.Attributes.Add("align","right");
c.ColumnSpan=7;
r.Cells.Add(c);
listTable.Rows.Add(r);

return "Ok";
}
}

这段生成乐一个CHECKBOX控制对象加入的列邮件的TABLE里面去
这样就通过这些CHECKBOX来选择特定邮件来进行删除,修改朝左

o = new CheckBox();
o.ID=pEnvelope.IMAPID.ToString();
c.Controls.Add(o);
  

 
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:服务器端数据访问
· 下一篇:String类使用的例子(3)
· .Net的精髓-XML和SOAP(一)
· ASP.NET升级能力探讨(二)
· C/C++中利用空指针简化代码,提高效率
· 给Asp.Net初学者的关于继承和多态性的例子
· ASP.NET虚拟主机的重大安全隐患(五)


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077