由于一些GUI大小限制,我想修改XCeed ColorPicker的调色板的大小。按钮的宽度小于下拉弹出窗口;我只是想改变弹出窗口(或高度)的宽度来强加可用标准颜色的布局。默认情况下,我们有10列颜色,我想有6或8列颜色。有什么意思吗?
答案 0 :(得分:1)
在ColorPicker的默认模板中,您会注意到一个名为" PART_AvailableColors"的ListBox。 ListBox使用名为" ColorListStyle"的样式。在该Style中,我们将ItemsPanel属性设置为宽度为200的WrapPanel。
<Style x:Key="ColorListStyle" TargetType="ListBox">
<!-- ... --->
<Setter Property="ItemsPanel">
<Setter.Value>
<ItemsPanelTemplate>
<WrapPanel Width="200" />
</ItemsPanelTemplate>
</Setter.Value>
</Setter>
<!-- ... --->
</Style>
不幸的是,目前还没有内置方法可以轻松更改ColorPicker的布局,所以现在我唯一可以提供的选项是在代码中重做模板/样式以在WrapPanel上设置不同的宽度。
默认模板和样式可以在Toolkit随附的源代码中找到。
编辑:在ColorPicker上添加了属性MaxDropDownWidth
以自定义弹出窗口的宽度(3.1版中的新增内容)。