DataTemplate选择器不会被调用

时间:2016-01-26 19:54:46

标签: c# wpf data-binding

我正在尝试使用DataTemplateSelector根据组合框选择加载不同的控件集,但它似乎永远不会被调用。除了标签和网格内的更多组合框外,我的DataTemplates中没有什么花哨的东西。

这是我的TemplateSelector

public class PWRPTemplateSelector : DataTemplateSelector
{

    public DataTemplate Product { get; set; }
    public DataTemplate Project { get; set; }

    public override DataTemplate SelectTemplate(object item, DependencyObject container)
    {
        if(item == null) { return base.SelectTemplate(item, container); }
        return (int)item == 0 ? Product : Project;

    }
}

我的xaml

 <DataTemplate x:Key="Project">
  .....
  </DataTemplate>

  <DataTemplate x:Key="Project">
  .....
  </DataTemplate>

    <c:PWRPTemplateSelector x:Key="PWRPTemplateSelector" Product="{StaticResource Product}" Project="{StaticResource Project}"/>



   <ItemsControl ItemsSource="{Binding TestSelc,  Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" 
                  ItemTemplateSelector="{StaticResource PWRPTemplateSelector}" Grid.Row="1" Grid.ColumnSpan="2" />

我的ItemControl绑定到Combobox的选定属性int。一切都得到了正确执行,除了DataTemplate永远不会被调用。所有财产都得到改变并实施INotifyPropertyChanged

更新:

如果我将所选项目更改为DataTemplateSelector值,我可以获得string。但是,该值将作为char而不是整个字符串传递。然后为字符串中的每个字符调用该方法。

0 个答案:

没有答案
相关问题