如何在Multibinding字符串块中添加条件? (WPF)

时间:2013-01-15 14:32:21

标签: wpf string xaml multibinding string-formatting

我正在尝试格式化我的应用程序的标题,但似乎一些基本的WPF细节让我感到厌烦。这是我的代码:

<Window.Title>
   <MultiBinding StringFormat="{}{0} - {1}">
      <Binding Path="Shell.Workbench.Title" />
      <Binding Path="Shell.Workbench.CurrentFileName" />
   </MultiBinding>
</Window.Title>

问题是我的第二个字段有时可能是空字符串。如果是这种情况,我怎么能隐藏它们之间的划线?

示例:如果两个字符串都存在,我有一个这样的标题                       “Title - CurrentFileName”。          如果第二个字符串为空,我有                       “标题 - ”          而且我想拥有                       的 “标题”即可。

谢谢

2 个答案:

答案 0 :(得分:1)

嗯,好吧,这只是一个替代方案,因为你要求MultiBinding的解决方案,但我会在ViewModel中创建一个额外的属性(用于连接字符串),这样做,并将其绑定到视图。

ValueConverters这样的其他方法都不值得付出努力。

答案 1 :(得分:1)

*这是我编辑了我的commant的答案你可以使用转换器http://msdn.microsoft.com/en-us/library/system.windows.data.multibinding.converter.aspx并在其中进行文本操作