2011-01-27 7 views
7

Я пытаюсь объединить 2 поля информации в моей сетке с помощью Multibinding, многозадачность работает нормально, но у меня возникают проблемы, когда я пытаюсь начать формирование 1 полей, которые являются даты в этой привязке.WPF Multibinding string format date

В 2 поля пользователя Инициалы т.е. EGJ и дата вступления в надежде достичь совмещенное поле выглядит как «EGJ - 01/01/2011»

Ниже, где я с существующим XAML

<tk:DataGridTextColumn.Binding> 
    <MultiBinding StringFormat=" {0} - {}{1:dd/MM/yyyy}"> 
    <Binding Path="UserInitials" /> 
    <Binding Path="EntryDate" /> 
    </MultiBinding> 
</tk:DataGridTextColumn.Binding> 

Любая помощь или указатели наиболее высоко

ответ

17

не мог видеть лес за деревьями

Просто удаление пустых брекеты решить мою проблему.

<tk:DataGridTextColumn.Binding> 
    <MultiBinding StringFormat=" {0} - {1:dd/MM/yyyy}"> 
    <Binding Path="UserInitials" /> 
    <Binding Path="EntryDate" /> 
    </MultiBinding> 
</tk:DataGridTextColumn.Binding> 

Спасибо всем, кто нашел время, чтобы посмотреть.

+0

Пример из MSDN, включая конвертер [ссылка] (http://msdn.microsoft.com/en-us/library/system.windows.data.imultivalueconverter.aspx) –

4

Если вы не намерены иметь ведущее место в отформатированном значении, которое вы должны использовать эту привязку вместо:

<tk:DataGridTextColumn.Binding> 
    <MultiBinding StringFormat="{}{0} - {1:dd/MM/yyyy}"> 
    <Binding Path="UserInitials" /> 
    <Binding Path="EntryDate" /> 
    </MultiBinding> 
</tk:DataGridTextColumn.Binding> 

, если StringFormat начинается с левой фигурной скобкой { XAML анализатор требует от вас, чтобы избежать его с помощью пары брекетов {}. В противном случае парсер путается, потому что скобки также используются в синтаксисе расширений разметки.

Подробная информация содержится в документации XAML по адресу {} Escape Sequence/Markup Extension.

Возможно, у вас была последовательность эвакуации, правильно помещенная в строку формата изначально, и перемещенные вещи, в результате чего пустые пары фигурных скобок были в другом месте?