object ConvertToType(string value, Type type) { if (type == typeof(Uri)) { return(pfn.GetAbsoluteFilename(value)); } else if (type == typeof(string)) { return(value); } else { TypeConverter tc = TypeDescriptor.GetConverter(type); if (tc != null) { return(tc.ConvertFromString(value)); } throw new ApplicationException(string.Format(SR.TypeConvertError, type.FullName)); } }
public void ReadXml(XmlReader r) { this.Clear(); if (r.IsEmptyElement) { return; } while (r.Read() && r.NodeType != XmlNodeType.EndElement) { if (r.NodeType == XmlNodeType.Element) { string nsuri = r.GetAttribute("nsuri"); bool disabled = false; string s = r.GetAttribute("disabled"); if (!string.IsNullOrEmpty(s)) { bool.TryParse(s, out disabled); } string filename = r.ReadString(); this.Add(nsuri, pfn.GetAbsoluteFilename(filename), disabled); } } }