static string EmbeddedResourceImageSourceToString(ImageSource imageSource) { EmbeddedResourceUri uri = GetSourceUri(imageSource); if (uri == null) { return(string.Empty); } return(string.Format("e{0}\\/{1}\\/{2}", uri.Assembly.FullName, uri.Name, uri.IsNameFull)); }
public static ImageSource CreateImageFromEmbeddedResource(Assembly assembly, string name, bool isNameFull) { EmbeddedResourceUri uri = new EmbeddedResourceUri(assembly, name, isNameFull); ImageSource imageSource; if (imageSources.TryGetValue(uri, out imageSource)) { return(imageSource); } Stream stream = AssemblyHelper.GetEmbeddedResourceStream(assembly, name, isNameFull); imageSource = CreateImageSourceFromStream(stream); SetSourceUri(imageSource, uri); imageSources.Add(uri, imageSource); return(imageSource); }
public override bool Equals(object obj) { EmbeddedResourceUri uri = obj as EmbeddedResourceUri; if (uri == null) { return(false); } if (!object.Equals(Assembly, uri.Assembly)) { return(false); } if (!object.Equals(Name, uri.Name)) { return(false); } if (!object.Equals(IsNameFull, uri.IsNameFull)) { return(false); } return(true); }
static void SetSourceUri(ImageSource imageSource, EmbeddedResourceUri uri) { imageSource.SetValue(SourceUriProperty, uri); }