Я хочу добавить кнопку в combobox, которая содержит ItemTemplate. Во-первых, что я попытался было это:WPF добавить кнопку в combobox
<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>
Но у меня есть исключение, в котором говорилось, что я могу добавить элементы управления, который имеет ItemTemplate. Второй из них:
<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>
Но в этом случае кнопка добавляется после каждого флажка. У вас есть идеи, как это сделать только один раз? Спасибо вам заблаговременно)
редактировать 'template' свойство самого ComboBox. В VS щелкните правой кнопкой мыши на CB, выберите «Редактировать шаблон» - «Редактировать копию», а затем добавьте кнопку в этот шаблон – ASh
Ваш вопрос непонятен - Вы хотите, чтобы кнопка была одной из опций в ComboBox? Вы хотите создать свой собственный ComboBox, который содержит кнопку? Вы хотите, чтобы каждая опция в ComboBox содержала кнопку? – MichaelThePotato
Я хочу добавить кнопку в качестве первого элемента combobox, и все следующие элементы должны быть элементами из ItemsTemplate –