Silverlight: почему не отображается png-изображение? - PullRequest
0 голосов
/ 09 августа 2010

В приложении Silverlight 4 есть несколько изображений, оба корректно отображаются в режиме конструктора, одно отображается корректно и во время выполнения:

<Image Height="180" Width="149" Source="../Picts/Field.png" />

Еще одно не отображается во время выполнения:

<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" Margin="5" Visibility="{Binding SquadSavedVisibility, Mode=OneWay}">
    <Image Source="..\Picts\ok.png" Width="16" Height="16" />
    <TextBlock Text=" It is saved" Foreground="Green"/>
</StackPanel>

Почему?И как его отобразить?

Любые мысли приветствуются.Спасибо.

Ответы [ 3 ]

8 голосов
/ 09 августа 2010

Это все в ваших косых чертах, VS Design time не возражает против того, что вы используете ".. \ Picts \ ok.png", но среда выполнения Silverlight хочет видеть "../Picts/ok.png".Другими словами, ваши косые черты имеют значение.

4 голосов
/ 28 ноября 2011

У меня была похожая проблема с изображениями, отображаемыми во время разработки, но не во время выполнения.Мой использовал URI пакета, поэтому я хотел также опубликовать это исправление:

Не работает во время выполнения, работает во время разработки:

<Image Source="mydllname;component/Images/logo.png" />

Работает как во время проектирования, так и во время выполнения:

<Image Source="/mydllName;component/Images/logo.png" />

Обратите внимание на дополнительный символ '/' до запуска Pack URI.

1 голос
/ 09 августа 2010

Вы можете попытаться подключиться к событию Image.ImageFailed. Для примеров и более подробного объяснения вы смотрите на этой странице:
http://msdn.microsoft.com/en-us/library/system.windows.controls.image.imagefailed%28v=VS.95%29.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...