2013-07-28 3 views

ответ

3

Если я правильно понимаю ваш вопрос, то вы хотите, чтобы обычные правила Caliburn.Micro применялись к элементу управления LongListSelector.

Я не работаю с разработкой Windows Phone, но я думаю, что это можно сделать, вызвав следующую строку кода в методе bootstrapper Configure().

ConventionManager.AddElementConvention<LongListSelector>(LongListSelector.ItemsSourceProperty, "SelectedItem", "SelectionChanged");

Этот код говорит Caliburn.Micro использовать ItemsSource свойство всякий раз, когда это находит именованный (например, х: Name = «MyList»)LongListSelector и использовать SelectedItem всякий раз, когда принят LongListSelector элемент в списке параметров сообщения о действии, и, наконец, он использует событие SelectionChanged для запуска сообщений об действии по умолчанию.

+0

Список связывается, но SelectedItem не выполняется? –

+0

@DennisvanderStelt Что вы подразумеваете под 'SelectedItem не выполняется? Если вы имеете в виду, что это не связано, вы правы, потому что 'SelectedItem' не является свойством зависимостей, поэтому вы не можете применить к нему привязку. То, что вы можете сделать, это подключить обработчик сообщений на «LongListSelector» и использовать этот обработчик для вызова метода в представлении модели списка, чтобы уведомить его, когда изменяется значение «SelectedItem». –

+1

Это становится частью пути. По-видимому, он не заботится о том, чтобы автоматически использовать пользовательский элемент управления для отображаемых элементов, где он является автоматическим для ListBox. – Gordon