Alba.Jaml.MSInternal.MePullParser.Parse C# (CSharp) Метод

Parse() публичный Метод

public Parse ( string text, int lineNumber, int linePosition ) : IEnumerable
text string
lineNumber int
linePosition int
Результат IEnumerable
        public IEnumerable<XamlNode> Parse (string text, int lineNumber, int linePosition)
        {
            this._tokenizer = new MeScanner(this._context, text, lineNumber, linePosition);
            this._originalText = text;
            Found f = new Found();
            this.NextToken();
            foreach (XamlNode iteratorVariable1 in this.P_MarkupExtension(f)) {
                yield return iteratorVariable1;
            }
            if (!f.found) {
                string message = this._brokenRule;
                this._brokenRule = null;
                throw new XamlParseException(this._tokenizer, message);
            }
            if (this._tokenizer.Token != MeTokenType.None) {
                throw new XamlParseException(this._tokenizer, SR.Get("UnexpectedTokenAfterME"));
            }
            if (this._tokenizer.HasTrailingWhitespace) {
                throw new XamlParseException(this._tokenizer, SR.Get("WhitespaceAfterME"));
            }
        }

Usage Example

Пример #1
0
 public void MePullParser_Parse ()
 {
     const string me = "{Binding 1, 2, Path=Name, Converter={StaticResource MyRes}, ConverterParameter={x:Static Window.LeftProperty}}";
     var xamlGenerator = new XamlGenerator(null, null, null);
     var xamlSchema = new XamlSchemaContext( /*new[] { PresentationCore, PresentationFramework }*/);
     var xamlContext = new XamlParserContext(xamlSchema, GetType().Assembly);
     xamlContext.AddNamespacePrefix("", xamlGenerator.Ns.NamespaceName);
     xamlContext.AddNamespacePrefix("x", xamlGenerator.NsX.NamespaceName);
     var meParser = new MePullParser(xamlContext);
     var sb = new StringBuilder();
     foreach (XamlNode xamlNode in meParser.Parse(me, 0, 0))
         sb.AppendFormat("{0}\n", xamlNode);
     //throw new Exception(SR.Get("MissingImplicitPropertyTypeCase"));
     throw new Exception(sb.ToString());
 }
All Usage Examples Of Alba.Jaml.MSInternal.MePullParser::Parse