Je génère dynamiquement une image via le code-behind dans Silverlight et apparemment la source d'image n'accepte pas une chaîne ou Uri comme chemin.
Comment puis-je définir la source?
Comment voulez-vous dire qu'il n'acceptera pas une chaîne comme source?
N'êtes-vous pas en mesure de le faire?
Ou dites-vous que votre image est en mémoire et que vous ne savez pas comment la référencer?
this.MyImage.Source = new BitmapImage(new Uri("/MyNameSpace;images/someimage.png", UriKind.Relative));
// create a new image
Image image = new Image();
// better to keep this in a global config singleton
string hostName = Application.Current.Host.Source.Host;
if (Application.Current.Host.Source.Port != 80)
hostName += ":" + Application.Current.Host.Source.Port;
// set the image source
image.Source = new BitmapImage(new Uri("http://" + hostName + "/image111.jpg", UriKind.Absolute));
J'ai dû remplacer ce qui suit pour que la solution fonctionne:
this.MyImage.Source = new BitmapImage(new Uri("/MyNameSpace;components/images/someimage.png", UriKind.Relative));
MyNameSpace n'a pas fonctionné pour moi, mais ExecutingAssemblyName l'a fait, donc:
Dim tmp As String() = Assembly.GetExecutingAssembly.FullName.Split(","c)
Dim path As String = "/" & tmp(0) & ";component/images/"
MyImage.Source = new BitmapImage(new Uri(path & "someImage.png"))