using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace MyOffice
{
/// <summary>
/// 程序员类(员工类)
/// </summary>
public class SE
{
/// <summary>
/// 工号
/// </summary>
public string ID { get; set; }
/// <summary>
/// 年龄
/// </summary>
public int Age { get; set; }
/// <summary>
/// 姓名
/// </summary>
public string Name { get; set; }
/// <summary>
/// 性别
/// </summary>
public Gender Gender { get; set; }
/// <summary>
/// 人气值
/// </summary>
private int _popularity = 0;
public int Popularity
{
get { return _popularity; }
set { _popularity = value; }
}
/// <summary>
/// 经理年度评分
/// </summary>
private int _score = 0;
public int Score
{
get { return _score; }
set { _score = value; }
}
/// <summary>
/// 经理评价
/// </summary>
private String _assess = "未评价";
public String Assess
{
get { return _assess; }
set { _assess = value; }
}
//public string SayHi()
//{
// string message = string.Format("大家好,我是 {0}, 今年 {1}岁,工号是 {2},我的人气值高达 {3}!",this.Name,this.Age,this.ID,this.Popularity);
// return message;
//}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace MyOffice
{
/// <summary>
/// 项目经理类
/// </summary>
class PM
{
/// <summary>
/// ID
/// </summary>
private string _id;
public string ID
{
set { _id = value; }
get { return _id; }
}
/// <summary>
/// 年龄
/// </summary>
private int _age;
public int Age
{
get { return _age; }
set
{
if (value >= 30 && value <= 100)
{
_age = value;
}
else
{
_age = 30;
}
}
}
/// <summary>
/// 姓名
/// </summary>
private string _name;
public string Name
{
get { return _name; }
set { _name = value; }
}
/// <summary>
/// 性别
/// </summary>
private Gender _gender;
public Gender Gender
{
get { return _gender; }
set { _gender = value; }
}
/// <summary>
/// 资历
/// </summary>
private int _yearOfExperience;
public int YearOfExperience
{
get { return _yearOfExperience; }
set { _yearOfExperience = value; }
}
/// <summary>
/// 问好
/// </summary>
/// <returns>问好的内容</returns>
public string SayHi()
{
string message;
message = string.Format(
"大家好,我是 {0} ,今年 {1} 岁,项目管理经验 {2}年。",
this._name, this._age, this._yearOfExperience
);
return message;
}
/// <summary>
/// 项目经理评分
/// </summary>
/// <param name="se"></param>
public void Judge(SE se, String assess, int score)
{
se.Assess = assess;
se.Score = score;
}
}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace MyOffice
{
public partial class FrmShow : Form
{
public SE[] engineers = new SE[3]; //员工集合信息
public FrmShow()
{
InitializeComponent();
this.Init(); //初始化员工集合信息
this.UpdateView(); //刷新显示
}
/// <summary>
/// 员工信息初始化
/// </summary>
public void Init()
{
SE jack = new SE();
jack.Name = "王小毛";
jack.Age = 26;
jack.Gender = Gender.male;
jack.ID = "111";
SE joe = new SE();
joe.Name = "周新雨";
joe.Age = 22;
joe.Gender = Gender.female;
joe.ID = "112";
SE ema = new SE();
ema.Name = "张烨";
ema.Age = 30;
ema.Gender = Gender.male;
ema.ID = "113";
engineers[0] = jack;
engineers[1] = joe;
engineers[2] = ema;
}
/// <summary>
/// 刷新ListView显示
/// </summary>
public void UpdateView()
{
lvAssess.Items.Clear(); //清空信息
for (int i = 0; i < engineers.Length; i++)
{
ListViewItem item = new ListViewItem();
item.Text = engineers[i].ID;
item.SubItems.Add(engineers[i].Name); //设置姓名
item.SubItems.Add(engineers[i].Age.ToString()); //设置年龄
item.SubItems.Add(engineers[i].Score.ToString()); //设置评分
item.SubItems.Add(engineers[i].Assess); //设置评价
this.lvAssess.Items.Add(item); //添加项
}
}
/// <summary>
/// 双击执行评分
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void lvAssess_DoubleClick(object sender, EventArgs e)
{
//获取当前选中的员工对象
if (this.lvAssess.SelectedItems.Count == 0)
{
return;
}
int index = 0;
for(int i = 0; i<engineers.Length;i++)
{
if (engineers[i].ID == this.lvAssess.SelectedItems[0].Text.Trim())
{
index = i;
break;
}
}
//对选中对象评分
FrmJudge frm = new FrmJudge(this,index);
frm.Show();
}
private void FrmShow_Load(object sender, EventArgs e)
{
}
}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace MyOffice
{
public partial class FrmJudge : Form
{
private FrmShow myParent; //主窗体
private SE se; //被评分的员工对象
public FrmJudge(FrmShow fparent,int index)
{
InitializeComponent();
this.myParent = fparent;
this.se = myParent.engineers[index];
}
//加载时填充信息
private void FrmJudge_Load(object sender, EventArgs e)
{
this.txtName.Text = se.Name;
this.txtAssess.Text = se.Assess;
this.txtScore.Text = se.Score.ToString();
}
//评分响应事件
private void btnOK_Click(object sender, EventArgs e)
{
try
{
PM pm = new PM();
pm.Judge(se,this.txtAssess.Text.Trim(),Int32.Parse(this.txtScore.Text.Trim()));
this.myParent.UpdateView(); //刷新主窗体
this.Close();
}
catch (Exception ex)
{
MessageBox.Show("评分失败!" + ex.ToString());
}
}
//取消按钮
private void btnCancel_Click(object sender, EventArgs e)
{
this.Close();
}
}
}