Windows runtime Windows Phone 8.1 RT-ItemTemplateSelector-未绑定Fullmode

Windows runtime Windows Phone 8.1 RT-ItemTemplateSelector-未绑定Fullmode,windows-runtime,windows-phone-8.1,windows-8.1,windows-8.1-universal,Windows Runtime,Windows Phone 8.1,Windows 8.1,Windows 8.1 Universal,我正在开发Windows phone 8.1 RT应用程序。我正在使用Combobox。有20多个操作员需要绑定到梳棉机上。当我们在组合框上单击tab键时,应用程序应该以全模式打开所有20个Opetaro。我需要两个不同的模板,应该使用一个模板(图像和文本块)时,项目在完全模式下打开和其他模板(只有文本块)时,一个项目在完全模式项目中选择。DataTemplateSelector继承并创建新的DataTemplateSelector。ItemTemplateSelector与新继承的DataTe

我正在开发Windows phone 8.1 RT应用程序。我正在使用Combobox。有20多个操作员需要绑定到梳棉机上。当我们在组合框上单击tab键时,应用程序应该以全模式打开所有20个Opetaro。我需要两个不同的模板,应该使用一个模板(图像和文本块)时,项目在完全模式下打开和其他模板(只有文本块)时,一个项目在完全模式项目中选择。DataTemplateSelector继承并创建新的DataTemplateSelector。ItemTemplateSelector与新继承的DataTemplateSelector一起分配。下面是使用的代码

<ComboBox Grid.Row="3" Grid.Column="0" Margin="15 5 0 0" 
      ItemsSource="{Binding Operators}"  SelectedItem="{Binding SelectedOperator, Mode=TwoWay}"
      Style="{StaticResource FullModeComboBoxStyle1}"   ItemContainerStyle="{StaticResource FullModeComboBoxItemStyle1}"
      VerticalAlignment="Top"
      Height="65"
      ItemTemplateSelector="{StaticResource ExploreTemplateSelector}"
      />
数据模板

<DataTemplate x:Key="OperatorDataTemplate">
            <StackPanel Orientation="Horizontal" Margin="5 5 0 0" Height="Auto">
                <Image Source="{Binding ImageUri}" Height="35" Width="60" VerticalAlignment="Top" />
                <TextBlock Text="{Binding Name}" Style="{StaticResource ComboboxTextBlockStyle}" Margin="5 0 0 0"   Width="120" VerticalAlignment="Top" TextWrapping="Wrap"/>
            </StackPanel>
        </DataTemplate>

        <DataTemplate x:Key="SelectedOperatorDataTemplate">
            <TextBlock Text="{Binding Name}" Style="{StaticResource ComboboxTextBlockStyle}" Margin="5 0 0 0"   Width="120" VerticalAlignment="Top" TextWrapping="Wrap"/>
        </DataTemplate>

        <class:ExploreTemplateSelector x:Key="ExploreTemplateSelector" DropdownItemsTemplate="{StaticResource SelectedOperatorDataTemplate}"
                                       SelectedItemTemplate="{StaticResource SelectedOperatorDataTemplate}"
                                       />

当我们标记组合框时,项不绑定,显示名称空间列表。但在完全模式下选择项目时,SelectTemplateCore将被命中,并且所选项目将使用SelectedItemTemplate显示。但是绑定数据源时,SelectTemplateCore不会被命中

这段代码有什么问题?为什么不使用DropDownItemsTemplate绑定项


提前感谢

因为当您在xaml中指定模板选择器时,将使用相同的数据模板“SelectedOperatorDataTemplate”初始化属性

<DataTemplate x:Key="OperatorDataTemplate">
            <StackPanel Orientation="Horizontal" Margin="5 5 0 0" Height="Auto">
                <Image Source="{Binding ImageUri}" Height="35" Width="60" VerticalAlignment="Top" />
                <TextBlock Text="{Binding Name}" Style="{StaticResource ComboboxTextBlockStyle}" Margin="5 0 0 0"   Width="120" VerticalAlignment="Top" TextWrapping="Wrap"/>
            </StackPanel>
        </DataTemplate>

        <DataTemplate x:Key="SelectedOperatorDataTemplate">
            <TextBlock Text="{Binding Name}" Style="{StaticResource ComboboxTextBlockStyle}" Margin="5 0 0 0"   Width="120" VerticalAlignment="Top" TextWrapping="Wrap"/>
        </DataTemplate>

        <class:ExploreTemplateSelector x:Key="ExploreTemplateSelector" DropdownItemsTemplate="{StaticResource SelectedOperatorDataTemplate}"
                                       SelectedItemTemplate="{StaticResource SelectedOperatorDataTemplate}"
                                       />