ComboBox только со стрелкой/символом

Я хотел бы иметь выпадающий список, который действительно мал по ширине и отображает только стрелку. Фон предназначен для экономии места рядом с другими кнопками в макете, а не для визуализации выбранного элемента. Но раскрывающийся список не должен быть ограничен по ширине. Я не нашел никаких свойств, чтобы скрыть внутреннее текстовое поле. Является ли это возможным ?


person deafjeff    schedule 22.02.2013    source источник
comment
Установите ширину на 20, раскрывающийся список должен занимать столько места, сколько ему нужно.   -  person Florian Gl    schedule 22.02.2013
comment
Я не упомянул, что использую стиль MSDN ComboBox. ContentPresenter, который отображает текст, начинается с поля 8, поэтому он отображает выделенный текст поверх стрелки, если ширина равна › 8.   -  person deafjeff    schedule 22.02.2013
comment
Мне нужно выяснить, могу ли я скрыть ContentPresenter (Name=ContentSite) и все равно использовать этот стиль.   -  person deafjeff    schedule 22.02.2013


Ответы (1)


В вашем ContentPresenter вы можете установить Visibility в зависимости от ActualWidth из ComboBox:

<ContentPresenter Visibility={Binding RelativeSource={RelativeSource TemplatedParent}, Path=ActualWidth, Converter={StaticResource ResourceKey=WidthToVisibility}}

В вашем Converter вы проверяете, равно ли значение 8 или меньше, затем возвращаете Visibility.Collapsed, иначе возвращаете Visibility.Visible.

person Florian Gl    schedule 22.02.2013