基于C#編寫經(jīng)理評分系統(tǒng)
先寫需求:
01.顯示員工信息
02.實現(xiàn)項目經(jīng)理給員工評分的功能
第一步:
建立兩個類,員工類和項目經(jīng)理類
定義屬性和方法
員工類:工號、年齡、姓名、人氣值、項目經(jīng)理年度評分、經(jīng)理評價
項目經(jīng)理類:ID、年齡、姓名、性別、資歷,由于經(jīng)理可以給員工評分,因此還有評分的方法
先上兩張圖再說:
查看窗體FrmShow

評分窗體FrmJudge

不說了,上代碼
首先是員工類
using System.Text;
using System.Threading.Tasks;
namespace 經(jīng)理評分系統(tǒng)
{
public class SE
{
//員工工號
public int EngineerId { get; set; }
//員工年齡
public int Age { get; set; }
//員工性別
public char Sex { get; set; }
//員工姓名
public string Name { get; set; }
//員工人氣值
public int PopularValue { get; set; }
//經(jīng)理年度評分
public int MScore { get; set; }
//經(jīng)理評價
public string Assess { get; set; }
}
}
然后是經(jīng)理類
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 經(jīng)理評分系統(tǒng)
{
class PM
{
//經(jīng)理ID
public int MId { get; set; }
//經(jīng)理年齡
public int MAge{ get; set; }
//經(jīng)理姓名
public string MName { get; set; }
//經(jīng)理性別
public char MSex{get; set; }
//定義評分方法
public void Judge(SE se,String assess,int score)
{
se.Assess = assess;
se.MScore = score;
}
}
}
接下來是查看窗體中的代碼
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace 經(jīng)理評分系統(tǒng)
{
public partial class FrmShow : Form
{
//定義員工數(shù)組
public SE[] engineer=new SE[3];
public FrmShow()
{
InitializeComponent();
Init(); //初始化SE集合信息
UpdateView();
}
//初始化員工信息
public void Init()
{
SE s1 = new SE();
s1.EngineerId = 111;
s1.Age = 26;
s1.Name = "王小毛";
s1.Assess = "未評價";
s1.MScore = 0;
engineer[0]=s1;
SE s2 = new SE();
s2.EngineerId = 112;
s2.Age = 22;
s2.Name = "周新雨";
s2.Assess = "未評價";
s2.MScore = 0;
engineer[1] = s2;
SE s3 = new SE();
s3.EngineerId = 113;
s3.Age = 30;
s3.Name = "張燁";
s3.Assess = "未評價";
s3.MScore = 0;
engineer[2] = s3;
}
//將數(shù)據(jù)綁定到listview對象的lvAssess上
public void UpdateView()
{
lvAssess.Items.Clear();//評價后對數(shù)據(jù)進行刷新
for (int i = 0; i < engineer.Length;i++ )
{
ListViewItem item = new ListViewItem();
//將員工信息綁定到listview中
item.Text = engineer[i].EngineerId.ToString();
item.SubItems.Add(engineer[i].Name);
item.SubItems.Add(engineer[i].Age.ToString());
item.SubItems.Add(engineer[i].MScore.ToString());
item.SubItems.Add(engineer[i].Assess);
this.lvAssess.Items.Add(item);
}
}
//雙擊ListView
private void lvAssess_DoubleClick(object sender, EventArgs e)
{
//獲取當前選中的對象
if(this .lvAssess.SelectedItems.Count==0)
{
return;//必須先選中一行
}
int index = 0;
for (int i = 0; i < engineer.Length;i++)
{
if(engineer[i].EngineerId.ToString()==this.lvAssess.SelectedItems[0].Text.Trim())
{
index = i;
break;
}
}
//選中對象評分
FrmJudge frm = new FrmJudge(this,index);
frm.Show();
}
}
}
最后是經(jīng)理評分窗體中寫的代碼
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace 經(jīng)理評分系統(tǒng)
{
public partial class FrmJudge : Form
{
//保存父窗體的實例
public FrmShow myParent;
//要評價的員工對象
private SE se;
//參數(shù):父窗體的實例、被評分的員工在員工數(shù)組中的位置
public FrmJudge(FrmShow fparent,int index)
{
InitializeComponent();
this.myParent = fparent;
this.se = myParent.engineer[index];
}
private void FrmJudge_Load(object sender, EventArgs e)
{
//窗體加載,顯示要評價的員工的姓名和得分等信息
this.txtName.Text = se.Name;
this.txtPingJia.Text = se.Assess;
this.txtPingFen.Text = se.MScore.ToString();
}
//點擊評分按鈕響應事件
private void btnPingFen_Click(object sender, EventArgs e)
{
try
{
PM pm = new PM();
pm.Judge(se,this.txtPingJia.Text.Trim(),Int32.Parse(this.txtPingFen.Text.Trim()));
//刷新主窗體
this.myParent.UpdateView();
this.Close();
}
catch (Exception ex)
{
MessageBox.Show("評分失敗!"+ex.ToString());
}
}
private void btnCancel_Click(object sender, EventArgs e)
{
this.Close();
}
}
}
以上所述是小編給大家介紹的基于C#編寫經(jīng)理評分系統(tǒng),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關文章
C# 大數(shù)據(jù)導出word的假死報錯的處理方法
C# 大數(shù)據(jù)導出word的假死報錯的處理方法,需要的朋友可以參考一下2013-03-03
總結(jié)C#動態(tài)調(diào)用WCF接口的兩種方法
這篇文章給大家總結(jié)了C#動態(tài)調(diào)用WCF接口的兩種方法,大家可以根據(jù)自己的需求選擇對應的方式,下面來一起看看。2016-09-09
C#中把Datatable轉(zhuǎn)換為Json的5個代碼實例
這篇文章主要介紹了C#中把Datatable轉(zhuǎn)換為Json的5個代碼實例,需要的朋友可以參考下2014-04-04
C#框架winform實現(xiàn)簡單點餐系統(tǒng)
這篇文章主要為大家詳細介紹了C#框架winform實現(xiàn)簡單點餐系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-07-07
深入多線程之:Reader與Write Locks(讀寫鎖)的使用詳解
本篇文章是對Reader與Write Locks(讀寫鎖)的使用進行了詳細的分析介紹,需要的朋友參考下2013-05-05
深入解析C#中的交錯數(shù)組與隱式類型的數(shù)組
這篇文章主要介紹了深入解析C#中的交錯數(shù)組與隱式類型的數(shù)組,隱式類型的數(shù)組通常與匿名類型以及對象初始值設定項和集合初始值設定項一起使用,需要的朋友可以參考下2016-01-01

