我的应用程序支持多种语言,这些语言存储在资源字典中,所以修改它只是加载正确的资源,不需要重新启动。
在一个窗口中,我需要根据ViewModel状态显示一些文本。我不是有多个TextBlock元素和切换可见性,而是尝试直接从我的ViewModel返回DynamicResource。
我尝试创建一个返回DynamicResourceExtension的属性,但它不起作用,因为返回的文本是类的名称,而不是实际的资源。
public DynamicResourceExtension TextResource
{
get => return new DynamicResourceExtension("String.TextResource");
}<TextBlock Text="{Binding TextResource, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}"/>我还尝试返回一个字符串并直接设置为DynamicResource,但它也没有工作。
<TextBlock Text="{DynamicResource {Binding TextResourceKey, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}}"/>发布于 2022-10-31 14:14:18
不可能从视图模型返回资源名称,并使用纯XAML标记解析资源。
视图模型应该返回直接绑定到的已解析的string值,或者必须在视图中编写一些代码,以编程方式解析返回的资源名称的值。
在XAML中不可能将“绑定”绑定到DynamicResource标记扩展的资源键。
https://stackoverflow.com/questions/74255476
复制相似问题