var caa = xm.GetCustomAttributeProvider ().GetCustomAttribute<ConstructorArgumentAttribute> (false);
return caa.ArgumentName;
}
+
+#if DOTNET
+ internal static ICustomAttributeProvider GetCustomAttributeProvider (this XamlType type)
+ {
+ return type.UnderlyingType;
+ }
+
+ internal static ICustomAttributeProvider GetCustomAttributeProvider (this XamlMember member)
+ {
+ return member.UnderlyingMember;
+ }
+#endif
}
}
return xobj.GetWrappedValue (); // dummy value
return xm.Invoker.GetValue (xobj.GetWrappedValue ());
}
-
-#if DOTNET
- internal static ICustomAttributeProvider GetCustomAttributeProvider (this XamlType type)
- {
- return type.UnderlyingType;
- }
-
- internal static ICustomAttributeProvider GetCustomAttributeProvider (this XamlMember member)
- {
- return member.UnderlyingMember;
- }
-#endif
}
}
get { return LookupValueSerializer (); }
}
- internal string InternalXmlName {
- get {
- var stn = XamlLanguage.SpecialNames.FirstOrDefault (s => s.Type == this);
- return stn != null ? stn.Name : Name;
- }
+ internal string GetInternalXmlName ()
+ {
+ var stn = XamlLanguage.SpecialNames.FirstOrDefault (s => s.Type == this);
+ return stn != null ? stn.Name : Name;
}
public static bool operator == (XamlType left, XamlType right)
void DoWriteStartObject (XamlType xamlType)
{
string prefix = GetPrefix (xamlType.PreferredXamlNamespace);
- w.WriteStartElement (prefix, xamlType.InternalXmlName, xamlType.PreferredXamlNamespace);
+ w.WriteStartElement (prefix, xamlType.GetInternalXmlName (), xamlType.PreferredXamlNamespace);
WritePendingNamespaces ();
}
public string Bar { get; set; }
}
- // no type converter, and there are only simple-type arguments == _PositionalParameters is applicable. (Unlike MyExtension7)
+ // no type converter, and there are only simple-type arguments == _PositionalParameters is applicable.
public class MyExtension5 : MarkupExtension
{
public MyExtension5 (string arg1, string arg2)