繁体   English   中英

如何将带空格的字符串传递给converterParameter?

[英]How do I pass string with spaces to converterParameter?

我的示例代码如下。

我想将'转到链接项'传递给ConverterParameter但我不能,因为字符串有空格。

Text="{Binding Value, 
        Source={x:Static local:Dictionary.Instance}, 
        Converter={StaticResource StringConverter}, 
        ConverterParameter=Go to linked item, Mode=OneWay}"

我怎样才能做到这一点?

选项1

Text="{Binding Value, 
        Source={x:Static local:Dictionary.Instance}, 
        Converter={StaticResource StringConverter}, 
        ConverterParameter='Go to linked item', Mode=OneWay}"

选项2

如果要在多个位置使用它,请添加字符串资源。

<sys:String x:Key="GoToLink">Go to linked item</sys:String>

并传递资源键。

ConverterParameter={StaticResource ResourceKey=GoToLink}}

如果你的字符串有空格然后用单引号括起来,双引号将不起作用; 这可能是因为整个文本字段用双引号括起来,因此在绑定中再次使用它们会错误地指示闭包。

Text="{Binding Value, 
    Source={x:Static local:Dictionary.Instance}, 
    Converter={StaticResource StringConverter}, 
    ConverterParameter='Go to linked item', Mode=OneWay}"

我希望你的目的是将带空格的字符串传递给转换器方法。 我建议你使用MultiBinding。 请参考以下演示代码:

<TextBox>
  <TextBox.Text>
     <MultiBinding Converter="{StaticResource CONVERTERKEY}" >
        <Binding Path="VALUE1" />
        <Binding Path="VALUE2" />
     </MultiBinding>
  </TextBox.Text>
</TextBox>

您将在Converter的Convert方法中同时获得VALUE1和VALUE2。 您需要实现IMul​​tiValueConverter接口才能执行此操作。

对于详细的解释,只是看看这个

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM