Ejemplo n.º 1
0
		public override XamlType GetXamlType(Type type)
		{
			if (type.Assembly == typeof(Platform).Assembly)
			{
				XamlType xamlType;
				if (!typeCache.TryGetValue(type, out xamlType))
				{
					xamlType = new EtoXamlType(type, this);
					typeCache.Add(type, xamlType);
				}
				return xamlType;
			}
			return base.GetXamlType(type);
		}
Ejemplo n.º 2
0
		public override XamlType GetXamlType(Type type)
		{
			var info = type.GetTypeInfo();

			if (info.Assembly == EtoAssembly
				|| (
				    info.IsGenericType
				    && info.GetGenericTypeDefinition() == typeof(Nullable<>)
				    && Nullable.GetUnderlyingType(type).GetTypeInfo().Assembly == EtoAssembly
				))
			{
				XamlType xamlType;
				if (typeCache.TryGetValue(type, out xamlType))
					return xamlType;
				xamlType = new EtoXamlType(type, this);
				typeCache.Add(type, xamlType);
				return xamlType;
			}
			return base.GetXamlType(type);
		}