4

我正在尝试使用String字典中的 a:

<?xml version="1.0" encoding="utf-8" ?>
<Dictionary EnglishName="English" CultureName="English" Culture="en-US">
...
<Value Id="ButtonSuppressFieldInformation" 
       ToolTip="Remove field" Name="Remove field number "/>
...
</Dictionary>

在此ConverterParamter启用多种语言支持:

<Button>
    ...
    <AutomationProperties.Name>
        <MultiBinding 
                Converter="{StaticResource IndexedForAutomationId}" 
                ConverterParameter="{loc:Translate 
                      Uid=ButtonSuppressFieldInformation, Default=Delete field}">
            <Binding RelativeSource="{RelativeSource Self}" />
            <Binding ElementName="MyContactDirectoryView" 
                     Path="ListConditionToSearch" />
        </MultiBinding >
    </AutomationProperties.Name>
</Button>

但唯一显示的是数字 ( IndexedForAutomationId),string没有出现。

使用 astring而不是"{loc:Translate Uid=ButtonSuppressFieldInformation, Default=Delete field}"作品:

<MultiBinding Converter="{StaticResource IndexedForAutomationId}" 
              ConverterParameter="Delete field">

显示Delete field 0

loc:Translate用作 ConverterParameter的方法是什么?

4

1 回答 1

1

这个问题可能是由于很多事情造成的,更多的代码在这里真的会有所帮助。但是,我将从转换器Convert()方法上的断点开始,IndexedForAutomationId以 1)检查您是否从内部绑定中获得期望的值,以及 2)检查转换器本身是否从字典中返回正确的字符串。

请务必查看这些关于如何调试 WPF 绑定的指南。

于 2013-03-26T13:10:53.237 回答