private void FinishPrint(object sender, EventArgs e) { cmdPrint.Enabled = true; // Set the ProgressBar back to 0. prgProgress.Value = 0; if (_frmPrintView == null) { frmViewer _frmPrintView = new frmViewer(); _frmPrintView.Characters = _lstCharacters; _frmPrintView.SelectedSheet = "Game Master Summary"; _frmPrintView.Show(); } else { _frmPrintView.Activate(); } _frmPrintView.RefreshView(); }
private void FinishPrint(object sender, RunWorkerCompletedEventArgs e) { cmdPrint.Enabled = true; // Set the ProgressBar back to 0. prgProgress.Value = 0; if (!e.Cancelled) { if (_frmPrintView == null) { _frmPrintView = new frmViewer(); _frmPrintView.SetSelectedSheet("Game Master Summary"); _frmPrintView.SetCharacters(_lstCharacters.ToArray()); _frmPrintView.Show(); } else { _frmPrintView.Activate(); } _frmPrintView.RefreshCharacters(); } }
/// <summary> /// Print this character and open the View Character window. /// </summary> /// <param name="blnDialog">Whether or not the window should be shown as a dialogue window.</param> public void Print(bool blnDialog = true) { // Write the Character information to a MemoryStream so we don't need to create any files. MemoryStream objStream = new MemoryStream(); XmlTextWriter objWriter = new XmlTextWriter(objStream, Encoding.UTF8); // Being the document. objWriter.WriteStartDocument(); // </characters> objWriter.WriteStartElement("characters"); PrintToStream(objStream, objWriter); // </characters> objWriter.WriteEndElement(); // Finish the document and flush the Writer and Stream. objWriter.WriteEndDocument(); objWriter.Flush(); objStream.Flush(); // Read the stream. StreamReader objReader = new StreamReader(objStream); objStream.Position = 0; XmlDocument objCharacterXML = new XmlDocument(); // Put the stream into an XmlDocument and send it off to the Viewer. string strXML = objReader.ReadToEnd(); objCharacterXML.LoadXml(strXML); objWriter.Close(); objStream.Close(); // If a reference to the Viewer window does not yet exist for this character, open a new Viewer window and set the reference to it. // If a Viewer window already exists for this character, use it instead. if (_frmPrintView == null) { List<Character> lstCharacters = new List<Character>(); lstCharacters.Add(this); frmViewer frmViewCharacter = new frmViewer(); frmViewCharacter.Characters = lstCharacters; frmViewCharacter.CharacterXML = objCharacterXML; _frmPrintView = frmViewCharacter; if (blnDialog) frmViewCharacter.ShowDialog(); else frmViewCharacter.Show(); } else { _frmPrintView.Activate(); _frmPrintView.RefreshView(); } }