3

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

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

问题是我的第二个字段有时可能是空字符串。如果是这种情况,我该如何隐藏它们之间的破折号?

示例:如果两个字符串都存在,我有这样的标题 "Title - CurrentFileName"。如果第二个字符串为空,我有 "Title -" 并且我只想有 "Title"

谢谢

4

2 回答 2

1

嗯,好吧,这只是一个替代方案,因为您正在寻求解决方案,MultiBinding但我会在 中创建一个附加属性(用于连接字符串)ViewModel,它的行为方式是这样,并将其绑定到视图。

其他所有方法ValueConverters都不值得付出努力。

于 2013-01-15T14:36:29.863 回答
1

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

于 2013-01-15T14:39:35.063 回答