/// <summary> /// Static method to read a class file in. /// </summary> /// <param name="fileName">Name of class file to read in</param> public static ClassTree ReadClass(string fileName) { ClassTree classTree = new ClassTree(); string streamFile = fileName; try { Stream stream = File.Open(streamFile, FileMode.Open); BinaryFormatter bFormatter = new BinaryFormatter(); while (stream.Position < stream.Length) { classTree = (ClassTree)bFormatter.Deserialize(stream); } stream.Close(); return classTree; } catch (Exception ex) { MessageBox.Show(ex.Message); } return classTree; }
/// <summary> /// Static method to create or update a class file. /// </summary> /// <param name="classPass">ClassTree object passed to be saved</param> /// <param name="fileName">Name of class file to write to</param> public static void CreateClass(ClassTree classPass, string fileName) { string streamFile = ClassMate.Properties.Settings.Default.SavePath + "\\" + fileName + ".cls"; try { Stream stream = File.Open(streamFile, FileMode.Create); BinaryFormatter bFormatter = new BinaryFormatter(); bFormatter.Serialize(stream, classPass); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
// Add a class to the tree view control private void AddToTree(string nodeName, string nodeText, ClassTree passClass) { treeViewClasses.SelectedNode = tNode; TreeNode nod = new TreeNode(); nod.Name = nodeName; nod.Text = nodeText; nod.Tag = passClass; TreeNode[] foundNodes = treeViewClasses.Nodes.Find(nodeName, true); foreach(TreeNode node in foundNodes) { treeViewClasses.Nodes.Remove(node); } treeViewClasses.SelectedNode.Nodes.Add(nod); treeViewClasses.SelectedNode.ExpandAll(); }
private void PopulateAssignments(ClassTree passClass) { foreach (ClassAssignment assignment in passClass.ClassTreeAssignments) { ListViewItem lvItem = new ListViewItem(); lvItem.Text = assignment.assignmentTitle; lvItem.SubItems.Add(assignment.assignmentDue.ToString()); listViewAssignments.Items.Add(lvItem); } }
private void buttonSave_Click(object sender, EventArgs e) { // Instantiate a new class object. ClassTree newClass = new ClassTree(); // Validate necessary fields (Class Title & Class Time(s)). If so add to new class. if (FieldValidator()) { newClass.ClassTitle = textBoxClassTitle.Text; // Enumerate the class times and add to the new class object. newClass.ClassTreeTimes = new ClassTimes(); foreach (string time in listBoxClassTimes.Items) { ClassTime classTime = new ClassTime(textBoxClassTitle.Text, time); newClass.ClassTreeTimes.Add(classTime); } } else { return; } // Populate the rest of the class information. newClass.ClassLocation = textBoxLocation.Text; newClass.ClassWebSite = textBoxWebSite.Text; newClass.ClassCreditHours = textBoxCreditHours.Text; // Populate the teacher information into the new class. newClass.ClassTeacher = textBoxTeacher.Text; newClass.ClassTeacherOffice = textBoxTeacherOffice.Text; newClass.ClassTeacherOfficeHours = textBoxOfficeHours.Text; newClass.ClassTeacherEmail = textBoxEmail.Text; newClass.ClassTeacherPhone = textBoxTeacherPhone.Text; newClass.ClassNote = richTextBoxClassNotes.Text; // newClass.ClassTreeAssignments.Add(new ClassAssignment("Assignment01", "", "", "", newClass.ClassTitle, DateTime.Now, false)); // populate this forms property for reference from calling form. ClassPass = newClass; // Write Class file to disk. DatabaseClass.CreateClass(newClass, newClass.ClassTitle); // Set the saveClose variable to true for calling form. saveClose = true; this.Close(); }