// ----- Directives handling ----- public override XamlType GetDirectiveType(string name) { if (_directives == null) { _directives = LoadDirectives(); } XamlType directive = _directives.GetDirectiveElement(name); return(directive); }
// ------------------------------------- private XamlDirectiveCollection LoadDirectives() { XamlDirectiveCollection directives = null; switch (TargetNamespace) { case XmlDirectives.Uri: // Uri == "http://www.w3.org/XML/1998/namespace" directives = new XamlDirectiveCollection(SchemaContext, XmlDirectives.DirectiveInfoTable); break; default: directives = new XamlDirectiveCollection(SchemaContext, null); break; } return(directives); }
public override XamlProperty GetDirectiveProperty(string name) { if (_directives == null) { _directives = LoadDirectives(); } XamlProperty directive = _directives.GetDirectiveProperty(name); if (directive == null) { directive = new UnknownProperty(name, null, /*declaringType - xml directives don't have one. */ XmlDirectives.Uri); } return(directive); }