⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lookachievement.aspx.cs

📁 这是一个管理系统的源码
💻 CS
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

namespace Service
{
	/// <summary>
	/// Summary description for LookAchievement.
	/// </summary>
	public partial class LookAchievement : System.Web.UI.Page
	{

		private ArrayList arrayComment = new ArrayList();
		public String sOperation = "";
		public String sLinkName  = "";
	
		protected void Page_Load(object sender, System.EventArgs e)
		{
			if(!Page.IsPostBack)
			{
				BindAchievementData();

				//总共的页数
				PageCount.Text = AchievementList.PageCount.ToString() + " ";		

				//当前的页码
				PageCurrentCount.Text = (AchievementList.CurrentPageIndex + 1).ToString() + " ";	

				//初始化页面导向按钮的可见性
				IsFirstLastPage();
			}
			if(Request.Params["LinkID"] != null)
			{
				GetLinkName(Request.Params["LinkID"].ToString());
			}
		}

		private void GetLinkName(String sLinkID)
		{
			String[] aName = new String[2];
			aName = GlobalVarables.GetLinkName(sLinkID);

			sOperation = aName[0].ToString();
			sLinkName  = aName[1].ToString();
		}

		private void BindAchievementData()
		{
			EmployeeDB employee = new EmployeeDB();
			DataSet ds = employee.GetEmployeeDS();

			AchievementList.DataSource = ds;
			AchievementList.DataBind();
		}

		private int CreateArrayList()
		{
			int nDataCount = 0;

			CommentTypeDB commentTpye = new CommentTypeDB();
			SqlDataReader recc = commentTpye.GetCommentTypeCount();

			if(recc.Read())
			{
				nDataCount = Int32.Parse(recc["DataCount"].ToString());
			}
			recc.Close();

			return(nDataCount);
		}

		private void BindCommentData(DataList dataList,int nEmployeeID)
		{
			arrayComment.Clear();

			int nDataCount = CreateArrayList();
			int[,] commentCount = new int[nDataCount,2];
            ///数组的第一列存放评论的ID;
            ///数组的第二列存放该评论(同一ID)的次数

			CommentTypeDB commentType = new CommentTypeDB();
			SqlDataReader recct = commentType.GetCommentTypes();
            
			int index = 0;
			while(recct.Read())
			{
				commentCount[index++,0] = Int32.Parse(recct["ID"].ToString());				
			}
			recct.Close();

			for(int i = 0; i < nDataCount; i++)
			{
				//初始化数组的第二列
				commentCount[i,1] = 0;
			}

			EmployeeCommentTypeDB employeeC = new EmployeeCommentTypeDB();
			SqlDataReader rece = employeeC.GetCommentTypeByEmployee(nEmployeeID);			
			
			//添加各种评论的次数,注意数组的下标;			
			while(rece.Read())
			{
				for(int i = 0; i < nDataCount; i++)
				{
					if(commentCount[i,0].ToString() == rece["CommentTypeID"].ToString())
					{
						commentCount[i,1]++;
						break;
					}
				}
			}			
			rece.Close();

			SqlDataReader recc = commentType.GetCommentTypes();
			
			index = 0;
			while(recc.Read())
			{
				CommentTypeCount commentTypeCount = new CommentTypeCount();
				commentTypeCount.CommentName      = recc["CommentTypeName"].ToString();
				commentTypeCount.CommentCount     = commentCount[index++,1];

				arrayComment.Add(commentTypeCount);
			}
			recc.Close();
 
			dataList.DataSource = arrayComment;
			dataList.DataBind();			
		}

		#region Web Form Designer generated code
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: This call is required by the ASP.NET Web Form Designer.
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		private void InitializeComponent()
		{    
			this.AchievementList.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.AchievementList_ItemDataBound);

		}
		#endregion

		private void AchievementList_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
		{
			Label label = (Label)e.Item.FindControl("EmployeeID");
			DataList dataList = (DataList)e.Item.FindControl("CommentList");
			if(dataList != null && label != null)
			{
				BindCommentData(dataList,Int32.Parse(label.Text));
			}
		}

		/// <summary>
		/// 实现分页机制
		/// </summary>
		protected void Page_Click(object sender, System.EventArgs e)
		{
		  String commangArg = ((LinkButton)sender).CommandArgument;

			switch(commangArg)
			{
					//首页
				case "First":
				{
					AchievementList.CurrentPageIndex = 0;
					break;
				}

					//上一页
				case "Prev":
				{
					AchievementList.CurrentPageIndex = (int)Math.Max(0,AchievementList.CurrentPageIndex - 1);
					break;
				}

					//下一页
				case "Next":
				{ 
					AchievementList.CurrentPageIndex = (int)Math.Min(AchievementList.PageCount -1,AchievementList.CurrentPageIndex +1);
					break;
				}

					//最后一页
				case "Last":
				{
					AchievementList.CurrentPageIndex = AchievementList.PageCount -1;
					break;
				}
				default:
				{
					break;
				}
			}

			//重新绑定AchievementList的数据			
			BindAchievementData();				

			//重新绑定当前的页码			
			PageCurrentCount.Text = (AchievementList.CurrentPageIndex + 1).ToString();	

			//控制页面导向按钮的可见性
      IsFirstLastPage();
		}

		//控制页面导向按钮的可见性
		private void IsFirstLastPage()
		{
			if(AchievementList.PageCount != 1)
			{
				if(AchievementList.CurrentPageIndex == 0)
				{
					PagePrev.Visible = false;
				}
				else
				{
					PagePrev.Visible = true;
				}
				if(AchievementList.CurrentPageIndex == AchievementList.PageCount -1)
				{
					PageNext.Visible = false;
				}
				else
				{
					PageNext.Visible = true;
				}
			}
			else
			{
				PagePrev.Visible = false;
				PageNext.Visible = false;
			}
		}

		//实现随机定位页面
		private void MoveToPageCountBtn_Click(object sender, System.EventArgs e)
		{
			if((MoveToPageCount.Text.Trim() != "")&&(MoveToPageCount.Text.Trim() != null))
			{
				if((Int32.Parse(MoveToPageCount.Text.Trim()) > 0)&&(Int32.Parse(MoveToPageCount.Text.Trim()) <= AchievementList.PageCount))
				{
					AchievementList.CurrentPageIndex = Int32.Parse(MoveToPageCount.Text.Trim()) -1;
					BindAchievementData();	

					//重新绑定当前的页码
					PageCurrentCount.Text = (AchievementList.CurrentPageIndex + 1).ToString();

					//控制页面导向按钮的可见性
              IsFirstLastPage();
				}
				else
				{
					Response.Write("<script>alert(\"你输入的页码值超出页码的范围,请重新输入!\")</script>");
				}
			}
			else
			{
				Response.Write("<script>alert(\"请输入你要转到的页码!\")</script>");
			}
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -