Есть ли способ получить доступ к My.Resources через Xaml?
Как это
<Image Source="{Binding MyImage,
Source={x:Static my:Resources},
Converter={StaticResource MyBitmapToImageSourceConverter}}" />
Это ошибка, которую я получаю:
\ Application.xaml (122,36): ошибка MC3029: член 'my: Resources' недопустим, поскольку у него нет подходящего имени типа.
Выше не работает, конечно.
ПРИМЕЧАНИЕ. Преобразователь предназначен только для иллюстрации.
Обновление:
Я подумал об одной идее, которая может быть хорошим подходом, если она будет работать, я создал класс-оболочку для ресурсов:
Public Class Resources
Public Shared ReadOnly m_Resources As New Resources
Public Shared ReadOnly Property Resources() As Resources
Get
Return m_Resources
End Get
End Property
Public ReadOnly Property MyResources(ByVal name As String) As Object
Get
Return My.Resources.ResourceManager.GetObject(name)
End Get
End Property
End Class
А потом в своем переплете я пытаюсь получить к нему доступ так:
<Setter Property="ImageSource"
Value="{Binding MyResources[Ok], Source={x:Static src:Resources.Resources}}"/>
Но я все еще получаю следующее сообщение:
System.Windows.Data Ошибка: 16: Не удается получить значение «MyResources» (тип «Объект») из «» (тип «Ресурсы»). BindingExpression: Path = MyResources [Ok]; DataItem = 'Resources' (HashCode = 59109011); целевым элементом является 'Image' (Name = 'btnOk'); Свойство target - «Source» (тип «ImageSource»). TargetParameterCountException: «System.Reflection.TargetParameterCountException: несоответствие количества параметров.
Кстати, я поместил тестовый MessageBox в средство получения MyResources, и, похоже, к этому свойству вообще нет доступа.