Matthew Menard Ответов: 1

Изменение цвета фона диаграммы excel в C#


I'm working on creating an Excel Chart from my C# application that pulls data out of my SQL Server database, and using that data, creates some Charts in an Excel instance. I have a pie chart that displays with the data, and all is well, accept I want to change the background color of the ChartArea and maybe use a gradient to add a little visual variation. I'm having trouble figuring out how do do that in C# using OLE. It looks like Office 16 is installed. This should be simple, but I'm having trouble with this. I saw a chart.ChartArea.Fill.BackColor property, but it's read only (I can't set it). Not sure how to do this programmatically. Any ideas would be helpful. Thanks.

Что я уже пробовал:

Я искал (bing, google)вокруг, но ничего не нашел. Есть варианты, но не моя конкретная проблема. Я могу изменить его вручную, когда появится диаграмма на моем рабочем листе, но я хочу иметь возможность сделать это программно.

1 Ответов

Рейтинг:
4

Alek Massey

Доступ к нему осуществляется с помощью свойства RGB Backcolor.

chart.ChartArea.Fill.BackColor.RGB = RGB(221, 221, 221)
Кроме того, если вам нужны подсказки о том, как сделать что-то с помощью C# программно в Excel, что вы знаете, как сделать вручную, запишите макрос. Сделайте это вручную с помощью макросъемки. после этого просмотрите код макрокоманды, чтобы узнать, как выполнить эту задачу в VBA. Тогда у вас есть подсказки о том, как это сделать в C#.
Ваше здоровье!

Объект FillFormat (Excel) | Microsoft Docs[^]


Matthew Menard

Я понял, что мне все-таки нужен передний цвет. Но та же самая структура отлично работает. Есть идеи, как создать градиент на этом фоне, от одного цвета к другому?

Alek Massey

Я обновил решение с помощью ссылки.