2016-06-27 3 views
1

Я не могу найти правильный синтаксис для непосредственного привязки элемента моего списка в xaml.Binding Item сам внутри списка dataTemplate xaml

<Listview ItemsSource={Binding Items}> 
    <Listview.ItemTemplate> 
     <CustomUserControl Item={Binding} /> 
    </Listview.ItemTempalte> 
</Listview> 

этот код работает нормально. Но когда я хочу добавить конвертер для переплета, он показывает мне синтаксическая ошибка:

<Listview ItemsSource={Binding Items}> 
    <Listview.ItemTemplate> 
     <CustomUserControl Item={Binding ,Converter={StaticResource myConverter}} /> 
    </Listview.ItemTempalte> 
</Listview> 

Кто-нибудь знает, как это сделать?

Спасибо!

+0

не могу себе представить, что не существует уже ответ на этот вопрос на SO ... –

+0

Можете ли вы уточнить, что вы спрашиваете? –

ответ

2

ИТАК ответ был просто

{Binding Converter={StaticResource myConverter}} 

без запятой ..

0

Я думаю, что вы используете конвертер неправильно. Вы можете попытаться определить ваш конвертер как статический ресурс.

  <converters:MyConverter x:Key="myConverter" /> 

и использовать этот способ

<Listview ItemsSource={Binding Items}> 
<Listview.ItemTemplate> 
    <CustomUserControl Item="{Binding, Converter={StaticResource myConverter}" /> 
</Listview.ItemTempalte> 

или

<Listview ItemsSource={Binding Items}> 
<Listview.ItemTemplate> 
    <CustomUserControl Item="{Binding RelativeSource={RelativeSource Self}, Converter={StaticResource myConverter}" /> 
</Listview.ItemTempalte> 

+0

Извините, я отредактировал сообщение, я использую конвертер, как вы. Но «RelativeSource = {RelativeSource Self}» не работает, потому что с этим кодом мой конвертер получает в качестве параметра мой CustomeUserControl, а не элемент элементов. –

+0

Извините, я неправильно понял вашу проблему. Возможно, это ответ * slash char * – Anton

+0

Нет, я попробовал: «Binding /», «Binding Path =.», Он всегда говорит мне, что "/property not found "или". property not found " –

Смежные вопросы