Я создал класс DataTemplateSelector. Я хотел бы применить его к одному элементу, поэтому он выбирает шаблон, основанный на некоторых условиях.Применение DataTemplateSelector к одному элементу
По существу я хотел бы иметь эквивалент этого в XAML:
% if myitem.A
<TextBlock Text="{Binding myitem.data }"/>
% else if myitem.B
<Button Content="{Binding myitem.data }"/>
public class MyTemplateSelector : DataTemplateSelector
{
public DataTemplate A {
get;
set;
}
public DataTemplate B {
get;
set;
}
public override DataTemplate SelectTemplate(object item, DependencyObject container) {
var myitem = item as MyItem;
if (myitem.A)
return A;
else if (myitem.B)
return B;
return base.SelectTemplate(item, container);
}
}
Как я могу добиться этого?
Спасибо.
Вы видите эту статью Http: //windowsphonegeek.com/articles/Implementing-Windows-Phone-7-DataTemplateSelector-and-CustomDataTemplateSelector? – Ku6opr
Да, но он предполагает, что я имею дело с коллекцией предметов. На моей модели просмотра у меня есть только один элемент, который я хочу выбрать для шаблона. Однако я понятия не имею, как применить его к одному элементу. :. ( – zyash