Мы пишем очень специализированный ItemsControl
, который фактически имеет три ContentPresenter
на "ряд", каждый из которых привязан к другому объекту (подумайте о сетке бедняка) вместо более распространенного, такого как ListBox
.
Теперь в ListBox
, если вы явно не укажете ни ItemTemplate
, ни ItemTemplateSelector
, кажется, есть какой-то внутренний селектор, который применяет шаблон, основываясь исключительно на типе данных. Однако наши ContentPresenter
их не подхватывают. Мы также попробовали переключить их на ContentControl
, но это тоже не помогло.
Теперь я знаю, что могу просто написать свой собственный DataTypeTemplateSelector
, который делает это, но мне интересно, не является ли эта функциональность уже "заложенной" где-то, поскольку она используется в очень многих ItemsControl
(ListBox
, TreeView
, ComboBox
', DataGrid
и др. ) и согласно этой статье MSDN...
http://msdn.microsoft.com/en-us/library/ms742521.aspx
... это должно работать по умолчанию! Но опять же, это не так.
Вот наш (псевдо) код...
Итак... кто-нибудь хочет попробовать, почему нет?