Beispiel #1
0
 /// <summary>
 /// Called when parsing begins
 /// </summary>
 public virtual void WriteDocumentStart(XamlDocumentStartNode XamlDocumentStartNode)
 {
     if (BamlRecordWriter != null)
     {
         BamlRecordWriter.WriteDocumentStart(XamlDocumentStartNode);
     }
 }
        // called to start writing the BAML
        internal void WriteDocumentStart(XamlDocumentStartNode xamlDocumentNode)
        {
            // Always put a Version Block before the Document Start record.
            BamlVersionHeader bamlVersion = new BamlVersionHeader();
            bamlVersion.WriteVersion(BinaryWriter);

            DocumentStartRecord = (BamlDocumentStartRecord) BamlRecordManager.GetWriteRecord(BamlRecordType.DocumentStart);
            DocumentStartRecord.DebugBaml = DebugBamlStream;

            // go ahead and write initial values to the Stream, will back fill.
            // the rootElement.
            WriteBamlRecord(DocumentStartRecord, xamlDocumentNode.LineNumber,
                            xamlDocumentNode.LinePosition);

            BamlRecordManager.ReleaseWriteRecord(DocumentStartRecord);
        }