Je souhaite ajouter un bouton dans la zone de liste déroulante, qui contient ItemTemplate. Tout d'abord, que j'ai essayé était la suivante:WPF ajouter un bouton dans la zone de liste déroulante
<ComboBox Name="oilWells_comboBox"
Style="{StaticResource MMComboBox}"
MaxWidth="100"
ItemsSource="{Binding DataContext.OilWellCollection, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=local:MainWindow}}"
Margin="0">
<ComboBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
<CheckBox IsChecked="{Binding Path=IsDisplay}" Checked="FilterDataGrid" Unchecked="FilterDataGrid">
<CheckBox.Content>
<TextBlock MinWidth="100" Text="{Binding Path=Name}" HorizontalAlignment="Center" TextWrapping="Wrap" TextTrimming="CharacterEllipsis"/>
</CheckBox.Content>
</CheckBox>
</StackPanel>
</DataTemplate>
</ComboBox.ItemTemplate>
<Button Content="Clear" Height="20" HorizontalAlignment="Stretch"></Button>
</ComboBox>
Mais j'ai une exception, qui dit ce que je ne peux pas ajouter des articles à contrôler, qui a ItemTemplate. Le second était le suivant:
<ComboBox Name="oilWells_comboBox"
Style="{StaticResource MMComboBox}"
MaxWidth="100"
ItemsSource="{Binding DataContext.OilWellCollection, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=local:MainWindow}}"
Margin="0">
<ComboBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
<CheckBox IsChecked="{Binding Path=IsDisplay}" Checked="FilterDataGrid" Unchecked="FilterDataGrid">
<CheckBox.Content>
<TextBlock MinWidth="100" Text="{Binding Path=Name}" HorizontalAlignment="Center" TextWrapping="Wrap" TextTrimming="CharacterEllipsis"/>
<Button Content="Clear" Height="20" HorizontalAlignment="Stretch"></Button>
</CheckBox.Content>
</CheckBox>
</StackPanel>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
Mais dans ce cas, le bouton ajoute après chaque case. Avez-vous des idées, comment le faire une seule fois? Merci d'avance)
modifier 'la propriété template' de ComboBox lui-même. Dans VS faites un clic droit sur CB, sélectionnez 'Modifier le modèle' -' Modifier la copie', puis ajoutez le bouton dans ce modèle – ASh
Votre question n'est pas claire - Voulez-vous le bouton comme l'une des options de la ComboBox? Voulez-vous créer votre propre ComboBox qui contient un bouton? Voulez-vous que chaque option de la ComboBox contienne un bouton? – MichaelThePotato
Je souhaite ajouter un bouton en tant que premier élément de liste déroulante, et tous les éléments suivants doivent être des éléments de ItemsTemplate –