Beispiel #1
0
        /// <summary>
        /// 将某用户的邮件取出绑定至DataGrid
        /// </summary>
        protected void BindGrid()
        {
            MailClass mail      = new MailClass();
            DataTable datatable = mail.GetMails(Int32.Parse(Session["FolderType"].ToString()), UserCookie.Value.ToString());
            DataView  source    = datatable.DefaultView;

            FolderType = Int32.Parse(Session["FolderType"].ToString());
//			for( int i=0 ;i<datatable.Columns.Count;i++)
//			{
//				if(datatable.Columns[i].ColumnName==SortBy)
//				{
//					SortByIndex=i;
//					break;
//				}
//			}

            if (CurrentPageIndex != "")
            {
                dgMailList.CurrentPageIndex = Int32.Parse(CurrentPageIndex);
            }
            if (FolderType != 4)
            {
                source.Sort = SortBy + " " + SortRule;
            }
            dgMailList.DataSource = source;
            dgMailList.DataBind();

            //	Response.Write(CurrentPageIndex);
            // 根据邮箱类别显示和隐藏列
            switch (FolderType)
            {
            case 1:
                dgMailList.Columns[3].Visible = false;                         // 隐藏收件人
                dgMailList.Columns[4].Visible = false;                         // 隐藏所有收件人
                break;

            case 2:
                dgMailList.Columns[2].Visible = false;                         // 隐藏发件人
                dgMailList.Columns[3].Visible = false;                         // 隐藏收件人
                //dgMailList.Columns[4].Visible = true; // 隐藏所有收件人
                break;

            case 3:
                dgMailList.Columns[2].Visible       = true;                   // 显示发件人
                dgMailList.Columns[3].Visible       = false;                  // 隐藏收件人
                dgMailList.Columns[4].Visible       = false;                  // 隐藏所有收件人
                this.btnClear.Attributes["onclick"] = "javascript:return confirm('您确认要清空吗?');";
                break;

            case 4:
                dgMailList.Columns[4].Visible = false;                         // 隐藏收件人
                dgMailList.Columns[6].Visible = false;                         // 隐藏所属项目
                break;

            default:

                break;
            }

            if (FolderType != 4)
            {
                DataView dataView = new DataView();
                dataView           = datatable.DefaultView;
                dataView.RowFilter = "MailReadFlag = false";
                this.lblMsg.Text   = datatable.Rows.Count + "/<font color=red>" + dataView.Count.ToString() + "</font>未读";
                this.lblMsg.Text  += (SortRule == "Desc")?"&nbsp;&nbsp;▼":"&nbsp;&nbsp;▲";
            }
            if (datatable.Rows.Count != 0)
            {
                this.btnDelete.Visible = true;
                this.btnDelete.Attributes ["onclick"] = "javascript:return confirm('您确认要删除吗?');";
            }
            mail      = null;
            datatable = null;
        }