2009-08-27 2 views
16

Для привязки к текущему DataContext в XAML вы можете использовать:XAML - привязка к DataContext и использование конвертера?

<TextBlock Text="{Binding}" /> 

Как вы это сделать с помощью преобразователя в смеси? Следующие работы, когда у вас есть собственность на пути:

<TextBlock Text="{Binding MyProperty,Converter={StaticResource converter}}" /> 

Но я не хочу, чтобы сделать это; Я просто хочу привязать к datacontext, а не к datacontext.MyProperty, если вы понимаете, что я имею в виду.

ответ

30

Просто опускает путь:

<TextBlock Text="{Binding Converter={StaticResource converter}}" /> 

Ах ожидание - замечает ваш вопрос с тегами Silverlight. Это не работает в Silverlight? Если нет, то вам, возможно, придется использовать расширенный синтаксис:

<TextBlock> 
    <TextBlock.Text> 
     <Binding Converter="{StaticResource converter}" /> 
    </TextBlock.Text> 
</TextBlock> 
+4

вздоха, что легко. Я оставил там запятую, которая сломала ее. Первый сделал трюк – Dann

+3

Отлично - я никогда не знаю с Silverlight. Иногда вещи, которые кажутся очень фундаментальными в WPF, полностью отсутствуют в Siverlight. –

+4

Хе-хе, я просто сделал то же самое. Потерял 20 минут на глупой запятой. Слава богу за переполнение стека. –

1

Dot знак также обеспечивает DataContext привязку для разработчиков SL

<TextBlock Text="{Binding Path=.,Converter={StaticResource converter}}" /> 
Смежные вопросы