public void ProcessMessage(object sender, string messageTypeString, object messageData)
        {
            if (messageTypeString == "BcfAddInstance" && messageData is Dictionary<string, object>)
            {
                var data = messageData as Dictionary<string, object>;
                var vi = new VisualizationInfo(_xpWindow.DrawingControl);
                var bitmapImage = GetSnapshotImage(_xpWindow.DrawingControl);
                var instanceTitle = (string)data["InstanceTitle"];
                var destinationEmail = (string)data["DestinationEmail"];
                var commentVerbalStatus = (string)data["CommentVerbalStatus"];
                var commentAuthor = (string)data["CommentAuthor"];
                var commentText = (string)data["CommentText"];

                var instance = SelFile.NewInstance(instanceTitle, bitmapImage, vi);

                var cmt = new Comment();

                cmt.Author = commentAuthor;
                cmt.Date = DateTime.Now;
                cmt.VerbalStatus = commentVerbalStatus;
                cmt.Comment1 = commentText;
                instance.Markup.Topic.ReferenceLink = destinationEmail;
                instance.Markup.Comment.Add(cmt);
            }
        }
 public static bool LoadFromFile(string fileName, out Comment obj)
 {
     System.Exception exception = null;
     return LoadFromFile(fileName, out obj, out exception);
 }
 public static bool Deserialize(string xml, out Comment obj)
 {
     System.Exception exception = null;
     return Deserialize(xml, out obj, out exception);
 }
 /// <summary>
 /// Deserializes xml markup from file into an Comment object
 /// </summary>
 /// <param name="fileName">string xml file to load and deserialize</param>
 /// <param name="obj">Output Comment object</param>
 /// <param name="exception">output Exception value if deserialize failed</param>
 /// <returns>true if this XmlSerializer can deserialize the object; otherwise, false</returns>
 public static bool LoadFromFile(string fileName, out Comment obj, out System.Exception exception)
 {
     exception = null;
     obj = default(Comment);
     try
     {
         obj = LoadFromFile(fileName);
         return true;
     }
     catch (System.Exception ex)
     {
         exception = ex;
         return false;
     }
 }
 /// <summary>
 /// Deserializes workflow markup into an Comment object
 /// </summary>
 /// <param name="xml">string workflow markup to deserialize</param>
 /// <param name="obj">Output Comment object</param>
 /// <param name="exception">output Exception value if deserialize failed</param>
 /// <returns>true if this XmlSerializer can deserialize the object; otherwise, false</returns>
 public static bool Deserialize(string xml, out Comment obj, out System.Exception exception)
 {
     exception = null;
     obj = default(Comment);
     try
     {
         obj = Deserialize(xml);
         return true;
     }
     catch (System.Exception ex)
     {
         exception = ex;
         return false;
     }
 }