У меня есть значения List с ResourceKey и Caption, эти значения являются строками. Ресурс - это имя фактического ресурса, определенного в словаре ресурсов. Каждая из этих значков ResourceKey - Canvas.Связывание свойства строки datacontext с ключом StaticResource
<Data ResourceKey="IconCalendar" Caption="Calendar"/>
<Data ResourceKey="IconEmail" Caption="Email"/>
У меня есть список, у которого есть набор данных с кнопкой и надпись под кнопкой. То, что я хочу сделать, это отобразить ресурс статического ресурса в качестве содержимого кнопки.
<ListView.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Button Content="{Binding ResourceKey}" Template="{StaticResource RoundButtonControlTemplate}"/>
<TextBlock Grid.Row="1" Margin="0,10,0,0" Text="{Binding Caption}" HorizontalAlignment="Center" FontSize="20" FontWeight="Bold" />
</Grid>
</DataTemplate>
</ListView.ItemTemplate>
Я думаю, что я попробовал все перестановки со связыванием StaticResource и т.д.
Я открыт для альтернатив, я знаю, что это может быть проще просто иметь изображение и установить свойство источника.
Благодаря
Использование FindResource вместо индекса доступа []: return Application.Current.FindResource (value); он будет искать во всех ресурсах, а не только в app.xaml – Liero
Не знаю почему, но мне пришлось использовать _App_.Current.Resources в отличие от Application.Current.Resources – Danielson