MigraDoc.Rendering.ParagraphRenderer.GetFieldValue C# (CSharp) Method

GetFieldValue() private method

private GetFieldValue ( MigraDoc.DocumentObjectModel.DocumentObject field ) : string
field MigraDoc.DocumentObjectModel.DocumentObject
return string
    string GetFieldValue(DocumentObject field)
    {
      if (field is NumericFieldBase)
      {
        int number = -1;
        if (field is PageRefField)
        {
          PageRefField pageRefField = (PageRefField)field;
          number = this.fieldInfos.GetShownPageNumber(pageRefField.Name);
          if (number <= 0)
          {
            if (this.phase == Phase.Formatting)
              return "XX";
            else
              return Messages.BookmarkNotDefined(pageRefField.Name);
          }
        }
        else if (field is SectionField)
        {
          number = this.fieldInfos.section;
          if (number <= 0)
            return "XX";
        }
        else if (field is PageField)
        {
          number = this.fieldInfos.displayPageNr;
          if (number <= 0)
            return "XX";
        }
        else if (field is NumPagesField)
        {
          number = this.fieldInfos.numPages;
          if (number <= 0)
            return "XXX";
        }
        else if (field is SectionPagesField)
        {
          number = this.fieldInfos.sectionPages;
          if (number <= 0)
            return "XX";
        }
        return NumberFormatter.Format(number, ((NumericFieldBase)field).Format);
      }
      else if (field is DateField)
      {
        DateTime dt = (this.fieldInfos.date);
        if (dt == DateTime.MinValue)
          dt = DateTime.Now;

        return this.fieldInfos.date.ToString(((DateField)field).Format);
      }
      else if (field is InfoField)
      {
        return GetDocumentInfo(((InfoField)field).Name);
      }
      else
        Debug.Assert(false, "Given parameter must be a rendered Field");

      return "";
    }
ParagraphRenderer