2010-04-13 6 views
2

Это простой вопросМОФ поле со списком заполнения

Как удалить пространство между содержанием и списком границы его. Например. Если выбор combobox является «Selection 1», тогда «S» рисуется в самом верхнем левом углу элемента управления ComboBox без пробелов между ним и верхней левой частью элемента управления.

Я сделал это

<ComboBox Padding="0"/> 

Даже это:

<ComboBox.ItemContainerStyle> 
    <Style TargetType="ComboBoxItem"> 
    <Setter Property="Padding" Value="0"/> 
    </Style> 
</ComboBox.ItemContainerStyle> 

Указанный ComboBox выше в ListView GridViewColumn. Может быть, это что-то испортило.

Это не удаляет прокладку. Есть идеи?

ответ

2

Вы не можете. По крайней мере, не с шаблоном по умолчанию. Вам придется писать свои собственные. Шаблон по умолчанию включает в себя следующее:

<DockPanel Margin="2"> 
    <TextBox .../> 
</DockPanel> 

Это будет жестко запрограммированный запас. О лучшем случае вы могли бы сделать с шаблоном по умолчанию является использование отрицательного отступы, чтобы компенсировать жестко запрограммированный предел:

<ComboBox Padding="-2"> 
    <ComboBoxItem >Selected</ComboBoxItem> 
</ComboBox> 
2

В Expression Blend это тривиально:

  1. правой кнопкой мыши на ComboBox и выберите Edit Control Parts (Template) - Edit A Copy.
  2. Удалите Margin="2" с начала шаблона.
Смежные вопросы