Как правильно установить источник изображения в XAML (Silverlight)

#silverlight #xaml #silverlight-4.0

#silverlight #xaml #silverlight-4.0

Вопрос:

У меня есть два проекта в решении. В первом проекте есть страница с кнопками-изображениями, во втором — изображения для этих кнопок.

Я пытаюсь установить источник изображения следующим образом:

 <telerik:RadButton x:Name="cbRun" Style="{StaticResource FvsToolbarButtonStyle}"
   IsEnabled="True" Visibility="Visible" ToolTipService.ToolTip="Запустить" Click="cbRun_Click">
    <Image Source="/fvsimages;component/forms_ed/Run.png"/>
 </telerik:RadButton>`
  

или вот так: ...<Image Source="../fvsimages/forms_ed/Run.png"/>...

но это не работает. (upd: изображения видны в конструкторе, но невидимы при отладке)

Все работает, когда страница и изображения были в одном проекте. Что я делаю не так?

Ответ №1:

При включении в библиотеку для изображений должно быть Build Action установлено значение Resource, и вам нужно использовать путь, начинающийся с «/assemblyname;component /»

Комментарии:

1. Я посмотрел и обнаружил, что их «Действие сборки» уже установлено в «Ресурс» (сначала я ищу множество вопросов в stackoverflow по поводу этой проблемы), а сборка и есть «fvsimages» (я установил это вручную в начале). Я попытался выполнить отладку с помощью firebug, но не обнаружил загруженных изображений (только пустые кнопки.

2. @ForeverSmiling: Теперь мы вступаем на трудную территорию. Вы должны проверить, что имя сборки — fvsimages (проверьте в свойствах проекта). Что произойдет, если вы поступите очень просто, создав новый пользовательский элемент управления, который содержит только элемент image, и установите этот пользовательский элемент управления в качестве корневого изображения?

3. Я проверил, имя сборки — fvsimages. Итак, я не понимаю, что я делаю не так. Теперь я попытаюсь создать новый UserControl. Я надеюсь, что это поможет мне понять проблему.