css
<?xml version="1.0" encoding="utf-8" ?> John Doe8379013.23.43.8Kelly Jackson9830112.82.93.0Sam Sheppard102904.24.34.5Lamont Smyth1297753.83.63.2Beth Canyon389212.12.22.0Barry McCathry2019823.32.93.7Steve Denn2901224.54.64.5Ahmed Habul09928123.93.83.9
using System; using System.Net; using System.Windows; using System.Windows.Controls; using System.Windows.Documents; using System.Windows.Ink; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Shapes; namespace LowIntegrationSLApp { public class Employees { public string empName { get; set; } public string empID { get; set; } public string empFY08 { get; set; } public string empFY09 { get; set; } public string empFy10 { get; set; } } }
加入後臺代碼。html
using System; using System.Text; using System.Windows; using System.Windows.Controls; using System.Windows.Documents; using System.Windows.Ink; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Shapes; using System.Xml; using System.Linq; using System.Collections.Generic; using System.Windows.Media.Imaging; using System.Xml.Linq; namespace LowIntegrationSLApp { public partial class MainPage : UserControl { string promotion = ""; string fastTrack = ""; double avgScore = 0.0; List myEmployeeList = new List(); public MainPage() { InitializeComponent(); } private void btnRefresh_Click(object sender, RoutedEventArgs e) { XElement employee = XElement.Load(@"Employee.xml"); resetThermometer(); string tempEmpName = ""; string tempEmpID = ""; string tempFY08 = ""; string tempFY09 = ""; string tempFY10 = ""; var employees = from emp in employee.Elements("Employee") select new { tempEmpName = (string)emp.Element("Name"), tempEmpID = (string)emp.Element("EmpID"), tempFY08 = (string)emp.Element("FY08"), tempFY09 = (string)emp.Element("FY09"), tempFY10 = (string)emp.Element("FY10") }; foreach (var item in employees) { Employees tempEmployee = new Employees(); tempEmployee.empName = item.tempEmpName.ToString(); lstbxEmployeeNames.Items.Add(tempEmployee.empName); tempEmployee.empID = item.tempEmpID.ToString(); tempEmployee.empFY08 = item.tempFY08.ToString(); tempEmployee.empFY09 = item.tempFY09.ToString(); tempEmployee.empFy10 = item.tempFY10.ToString(); myEmployeeList.Add(tempEmployee); } } private void lstbxEmployeeNames_SelectionChanged(object sender, SelectionChangedEventArgs e) { resetThermometer(); string tempEmpID = ""; string tempFY08 = ""; string tempFY09 = ""; string tempFY10 = ""; string empFilter = lstbxEmployeeNames.SelectedItem.ToString(); var expr = from emp in myEmployeeList select new { emp.empName, emp.empID, emp.empFY08, emp.empFY09, emp.empFy10 }; foreach (var item in expr) { if (item.empName == empFilter) { txtbxEmplID.Text = item.empID; txtbxFY08.Text = item.empFY08; txtbxFY09.Text = item.empFY09; txtbxFY10.Text = item.empFy10; } } } private void btnCalc_Click(object sender, RoutedEventArgs e) { resetThermometer(); double rvwFY08 = Double.Parse(txtbxFY08.Text); double rvwFY09 = Double.Parse(txtbxFY09.Text); double rvwFY10 = Double.Parse(txtbxFY10.Text); avgScore = Math.Round(((rvwFY08 + rvwFY09 + rvwFY10) / 3), 2) * 100 / 100; if (avgScore >= 4.5) { promotion = "Yes"; fastTrack = "Yes"; shapeRectanglePromo.Height = 3; lblMessage.Content = "High Reward"; } else if (avgScore >= 4.0) { promotion = "Yes"; fastTrack = "No"; shapeRectangleNoPromo.Height = 3; lblMessage.Content = "Med. Reward"; } else { promotion = "No"; fastTrack = "No"; shapeRectangleLowScore.Height = 3; lblMessage.Content = "Low Reward"; } txtbxPromo.Text = promotion; txtbxFastTrack.Text = fastTrack; txtbxAVGScore.Text = avgScore.ToString(); } private void resetThermometer() { shapeRectanglePromo.Height = 0; shapeRectangleNoPromo.Height = 0; shapeRectangleLowScore.Height = 0; txtbxAVGScore.Text = ""; txtbxFastTrack.Text = ""; txtbxPromo.Text = ""; lblMessage.Content = ""; } } }