private void WriteWrappedMember(bool stripWhitespace) { this.nodeQueue.Writer.WriteGetObject(this.innerReaderLineInfo); this.nodeQueue.Writer.WriteStartMember(XamlLanguage.Items, this.innerReaderLineInfo); XamlReader reader = this.innerReader.ReadSubtree(); reader.Read(); reader.Read(); while (!reader.IsEof) { bool flag = false; if (reader.NodeType == XamlNodeType.Value) { string str = reader.Value as string; if ((str != null) && (str.Trim().Length == 0)) { flag = true; } } if (flag && stripWhitespace) { reader.Read(); } else { XamlWriterExtensions.Transform(reader.ReadSubtree(), this.nodeQueue.Writer, this.innerReaderLineInfo, false); } } this.nodeQueue.Writer.WriteEndObject(this.innerReaderLineInfo); this.nodeQueue.Writer.WriteEndMember(this.innerReaderLineInfo); reader.Close(); this.ExitObject(); }
public ValueHolder(XamlSchemaContext schemaContext, XamlMember propertyValue, XamlReader reader, IXamlLineInfo lineInfo) { this.nodes = new XamlNodeQueue(schemaContext); this.PropertyValue = propertyValue; XamlWriterExtensions.Transform(reader.ReadSubtree(), this.nodes.Writer, lineInfo, true); }