我正在尝试将colordialog的一个自定义颜色设置为表单的当前背景颜色。我是这样做的:
ColorDialog1.CustomColors(0) = Form1.BackColor.ToArgb
它不起作用。请帮忙! vb.net代码请
请注意,我只需要一个特定元素来包含颜色。不一定是0,但可能是9或15答案 0 :(得分:2)
CustomColors
ColorDialog
属性的getter返回自定义颜色数组的克隆,因此在您的问题中执行的操作将修改数组的副本,而不是使用的数据副本通过对话框。
要设置一个自定义颜色,请获取CustomColors
属性的值并将其指定给变量。通过更改此变量中的项目来更改颜色。完成后,将此变量的值设置回CustomColors
属性。
正如chrissr所说(以及MSDN文档),默认值为null
,因此您可能需要分配一个新数组。我在Visual Studio中尝试过它,而CustomColors
确实包含一个完全填充的白色数组。