bool ParseArgument ()
{
ReadWhitespace();
var escapedValue = ParseEscapedValue ();
if (escapedValue != null)
{
AddPositionalParameter(escapedValue);
ParseArgument();
return true;
}
var name = ReadUntil(new [] { '=', ' ', ',' }, readToEnd: true, skip: false, escape: '\\');
if (string.IsNullOrEmpty(name))
return false;
if (!ReadWhitespaceUntil('='))
{
AddPositionalParameter(name + ReadUntil(',', true, escape: '\\').TrimEnd());
ParseArgument();
return true;
}
member = Type.GetMember (name) ?? new XamlMember(name, Type, false);
ReadWhitespace ();
ParseValue ();
return true;
}