Exemple #1
0
 public string ToString(INamespacePrefixLookup prefixLookup)
 {
     if (prefixLookup == null)
     {
         return(this.ConvertToStringInternal(null));
     }
     return(this.ConvertToStringInternal(new Func <string, string>(prefixLookup.LookupPrefix)));
 }
Exemple #2
0
        internal void GenerateXamlReferences(IValueSerializerContext context)
        {
            INamespacePrefixLookup service = GetService <INamespacePrefixLookup>(context);

            foreach (VisualBasicImportReference reference in this.ImportReferences)
            {
                reference.GenerateXamlNamespace(service);
            }
        }
        internal void GenerateXamlReferences(IValueSerializerContext context)
        {
            // promote settings to xmlns declarations
            INamespacePrefixLookup namespaceLookup = GetService <INamespacePrefixLookup>(context);

            foreach (VisualBasicImportReference importReference in this.ImportReferences)
            {
                importReference.GenerateXamlNamespace(namespaceLookup);
            }
        }
Exemple #4
0
 public string ToString(INamespacePrefixLookup prefixLookup)
 {
     if (prefixLookup == null)
     {
         return(ConvertToStringInternal(null));
     }
     else
     {
         return(ConvertToStringInternal(prefixLookup.LookupPrefix));
     }
 }
        internal static string ConvertXamlTypeToString(ITypeDescriptorContext context, XamlType xamlType)
        {
            INamespacePrefixLookup service = GetService <INamespacePrefixLookup>(context);

            if (service == null)
            {
                return(null);
            }
            XamlTypeName name = new XamlTypeName(xamlType);

            return(name.ToString(service));
        }
Exemple #6
0
 public static string ToString(IList <XamlTypeName> typeNameList, INamespacePrefixLookup prefixLookup)
 {
     if (typeNameList == null)
     {
         throw new ArgumentNullException("typeNameList");
     }
     if (prefixLookup == null)
     {
         throw new ArgumentNullException("prefixLookup");
     }
     return(ConvertListToStringInternal(typeNameList, prefixLookup.LookupPrefix));
 }
        internal void GenerateXamlNamespace(INamespacePrefixLookup namespaceLookup)
        {
            string ns = null;

            if ((this.Xmlns != null) && !string.IsNullOrEmpty(this.Xmlns.NamespaceName))
            {
                ns = this.Xmlns.NamespaceName;
            }
            else
            {
                ns = string.Format(CultureInfo.InvariantCulture, "clr-namespace:{0};assembly={1}", new object[] { this.Import, this.Assembly });
            }
            namespaceLookup.LookupPrefix(ns);
        }
Exemple #8
0
        internal void GenerateXamlNamespace(INamespacePrefixLookup namespaceLookup)
        {
            // promote reference to xmlns declaration
            string xamlNamespace = null;

            if (this.Xmlns != null && !string.IsNullOrEmpty(this.Xmlns.NamespaceName))
            {
                xamlNamespace = this.Xmlns.NamespaceName;
            }
            else
            {
                xamlNamespace = string.Format(CultureInfo.InvariantCulture, "clr-namespace:{0};assembly={1}", this.Import, this.Assembly);
            }
            // we don't need the return value since we just want to register the namespace/assembly pair
            namespaceLookup.LookupPrefix(xamlNamespace);
        }
        void LookupType(Type type)
        {
            var xamlType = SchemaContext.GetXamlType(type);

            prefixLookup = prefixLookup ?? value_serializer_ctx?.GetService(typeof(INamespacePrefixLookup)) as INamespacePrefixLookup;
            if (prefixLookup == null)
            {
                return;
            }
            prefixLookup.LookupPrefix(xamlType.PreferredXamlNamespace);
            if (xamlType.TypeArguments != null)
            {
                for (int i = 0; i < xamlType.TypeArguments.Count; i++)
                {
                    prefixLookup.LookupPrefix(xamlType.TypeArguments[i].PreferredXamlNamespace);
                }
            }
        }
        internal static object ConvertToHelper(ITypeDescriptorContext context, object value, Type destinationType)
        {
            XName name = value as XName;

            if (((destinationType == typeof(string)) && (name != null)) && (context != null))
            {
                INamespacePrefixLookup service = (INamespacePrefixLookup)context.GetService(typeof(INamespacePrefixLookup));
                if (service != null)
                {
                    string prefix = service.LookupPrefix(name.Namespace.NamespaceName);
                    if (string.IsNullOrEmpty(prefix))
                    {
                        return(name.LocalName);
                    }
                    return(prefix + ":" + name.LocalName);
                }
            }
            return(null);
        }
Exemple #11
0
        static string DoToString(IList <XamlTypeName> typeNameList, INamespacePrefixLookup prefixLookup)
        {
            bool   comma = false;
            string ret   = "";

            foreach (var ta in typeNameList)
            {
                if (comma)
                {
                    ret += ", ";
                }
                else
                {
                    comma = true;
                }
                ret += ta.ToString(prefixLookup);
            }
            return(ret);
        }
Exemple #12
0
        public string ToString(INamespacePrefixLookup prefixLookup)
        {
            if (Namespace == null)
            {
                throw new InvalidOperationException("Namespace must be set before calling ToString method.");
            }
            if (Name == null)
            {
                throw new InvalidOperationException("Name must be set before calling ToString method.");
            }

            string ret;

            if (prefixLookup == null)
            {
                ret = String.Concat("{", Namespace, "}", Name);
            }
            else
            {
                string p = prefixLookup.LookupPrefix(Namespace);
                if (p == null)
                {
                    throw new InvalidOperationException(String.Format("Could not lookup prefix for namespace '{0}'", Namespace));
                }
                ret = p.Length == 0 ? Name : p + ":" + Name;
            }
            string arr = null;

            if (ret[ret.Length - 1] == ']')
            {
                int idx = ret.LastIndexOf('[');
                arr = ret.Substring(idx);
                ret = ret.Substring(0, idx);
            }

            if (TypeArguments.Count > 0)
            {
                ret += String.Concat("(", DoToString(TypeArguments, prefixLookup), ")");
            }

            return(ret + arr);
        }
		public string ToString (INamespacePrefixLookup prefixLookup)
		{
			if (Namespace == null)
				throw new InvalidOperationException ("Namespace must be set before calling ToString method.");
			if (Name == null)
				throw new InvalidOperationException ("Name must be set before calling ToString method.");

			string ret;
			if (prefixLookup == null)
				ret = String.Concat ("{", Namespace, "}", Name);
			else {
				string p = prefixLookup.LookupPrefix (Namespace);
				if (p == null)
					throw new InvalidOperationException (String.Format ("Could not lookup prefix for namespace '{0}'", Namespace));
				ret = p.Length == 0 ? Name : p + ":" + Name;
			}
			string arr = null;
			if (ret [ret.Length - 1] == ']') {
				int idx = ret.LastIndexOf ('[');
				arr = ret.Substring (idx);
				ret = ret.Substring (0, idx);
			}

			if (TypeArguments.Count > 0)
				ret += String.Concat ("(", DoToString (TypeArguments, prefixLookup), ")");

			return ret + arr;
		}
		static string DoToString (IList<XamlTypeName> typeNameList, INamespacePrefixLookup prefixLookup)
		{
			bool comma = false;
			string ret = "";
			foreach (var ta in typeNameList) {
				if (comma)
					ret += ", ";
				else
					comma = true;
				ret += ta.ToString (prefixLookup);
			}
			return ret;
		}
		public static string ToString (IList<XamlTypeName> typeNameList, INamespacePrefixLookup prefixLookup)
		{
			if (typeNameList == null)
				throw new ArgumentNullException ("typeNameList");
			if (prefixLookup == null)
				throw new ArgumentNullException ("prefixLookup");

			return DoToString (typeNameList, prefixLookup);
		}
Exemple #16
0
		public string ToString (INamespacePrefixLookup prefixLookup)
		{
			if (Namespace == null)
				throw new InvalidOperationException ("Namespace must be set before calling ToString method.");
			if (Name == null)
				throw new InvalidOperationException ("Name must be set before calling ToString method.");

			string ret;
			if (prefixLookup == null)
				ret = String.Concat ("{", Namespace, "}", Name);
			else {
				string p = prefixLookup.LookupPrefix (Namespace);
				if (p == null)
					throw new InvalidOperationException (String.Format ("Could not lookup prefix for namespace '{0}'", Namespace));
				ret = p.Length == 0 ? Name : p + ":" + Name;
			}

			if (TypeArguments.Count > 0)
				ret += String.Concat ("(", DoToString (TypeArguments, prefixLookup), ")");

			return ret;
		}
 public static string ToString(IList<XamlTypeName> typeNameList, INamespacePrefixLookup prefixLookup)
 {
     if (typeNameList == null)
     {
         throw new ArgumentNullException("typeNameList");
     }
     if (prefixLookup == null)
     {
         throw new ArgumentNullException("prefixLookup");
     }
     return ConvertListToStringInternal(typeNameList, new Func<string, string>(prefixLookup.LookupPrefix));
 }
 public string ToString(INamespacePrefixLookup prefixLookup)
 {
     if (prefixLookup == null)
     {
         return this.ConvertToStringInternal(null);
     }
     return this.ConvertToStringInternal(new Func<string, string>(prefixLookup.LookupPrefix));
 }