Я видел подобный вопрос и надеялся на решение, но просто давая совет подклассам ComboBox для меня не достаточно. Мне нужно это в маленьких ложках ...Как подклассировать WPF ComboBox, чтобы добавить дополнительную кнопку
В этом случае мне нужна дополнительная кнопка на моем специальном comboBox для добавления новых записей в список элементов. Сегодня у меня это как UserControl, но оно выглядит не очень хорошо, и мне нужно больше элементов управления для моих просмотров, поэтому я начал создавать настраиваемый элемент управления, пытаясь расширить ComboBox.
Я не уедешь ... Пожалуйста, одолжите мне руку ... :)
Мой код до сих пор:
public class ComboBoxWithAdd : ComboBox
{
static ComboBoxWithAdd()
{
DefaultStyleKeyProperty.OverrideMetadata(typeof(ComboBoxWithAdd), new FrameworkPropertyMetadata(typeof(ComboBoxWithAdd)));
}
}
В Generic.xaml у меня есть это:
<Style TargetType="{x:Type local:ComboBoxWithAdd}" BasedOn="{StaticResource {x:Type ComboBox}}">
</Style>
На самом деле это звучит как хорошая ситуация для пользовательского элемента управления, а не для подкласса «ComboBox». Не могли бы вы объяснить более подробно, почему вы выбрали этот маршрут и отказаться от улучшения пользовательского контроля? Как насчет подклассификации пользовательского элемента управления? – FrustratedWithFormsDesigner
@Frustrated - класс, который вы получаете от ComboBox, является настраиваемым элементом управления. Что вы советуете? –
@John Bowen: К сожалению, я имею в виду настраиваемый элемент управления в смысле класса, который является подклассом 'Control', а внешний вид и макет которого обрабатываются через конструктор форм. Если я не ошибаюсь, VisualStudio обычно вызывает эти классы UserControls. – FrustratedWithFormsDesigner