2016-05-06 6 views
0

Из-за некоторых ограничений размера GUI я хотел бы изменить размер цветовой палитры XCeed ColorPicker. Ширина кнопки меньше раскрывающегося всплывающего окна; Я просто хочу изменить ширину всплывающего окна (или высоты), чтобы наложить макет доступных стандартных цветов. По умолчанию у нас есть 10 колонок цветов, я бы хотел иметь 6 или 8 колонок цветов. Есть ли что-нибудь для этого?Измените размер палитры ColorPicker

ответ

1

В шаблоне по умолчанию для ColorPicker вы увидите ListBox с именем «PART_AvailableColors». В ListBox используется стиль «ColorListStyle». В этом стиле, мы устанавливаем свойство ItemsPanel быть WrapPanel с шириной 200

<Style x:Key="ColorListStyle" TargetType="ListBox"> 
    <!-- ... ---> 
    <Setter Property="ItemsPanel"> 
     <Setter.Value> 
      <ItemsPanelTemplate> 
       <WrapPanel Width="200" /> 
      </ItemsPanelTemplate> 
     </Setter.Value> 
    </Setter> 
    <!-- ... ---> 
</Style> 

К сожалению, в настоящее время нет встроенного способа легко изменить расположение ColorPicker, поэтому сейчас только вариант, который я могу предложить, - это повторить шаблон/стиль в вашем коде, чтобы установить другую ширину на WrapPanel.

Шаблоны и стили по умолчанию можно найти в исходном коде, поставляемом с Toolkit.

Редактировать: свойство MaxDropDownWidth было добавлено в ColorPicker для настройки ширины всплывающего окна (новое в версии 3.1).