В нашем приложении у нас есть таблицы стилей для определения общих цветов и т. Д. Я написал быструю и грязную функцию, в которой я получаю набор данных из хранимой процедуры, отсекаю столбцы, которые я не хочу показывать, встраиваю их в Программно сгенерированный DataGrid, установите стили DataGrid, а затем экспортируйте его в Excel. Все любят цвета в выводе Excel (вздох! Они соответствуют цветам DataGrid, бла-бла-бла…).
Моя последняя часть, которую я хотел бы добавить к этому, - это то, что я хотел бы программно получить доступ к стилю и получить из него цветовые коды и другие элементы (.IntranetGridHead) вместо жесткого их кодирования, что я и делаю сейчас.
int iHeaderColor = Convert.ToInt32 ("D0D7E8", 16);
DataGrid dg = new DataGrid();
dg.DataSource = dsReturnDataSet.Tables[0].DefaultView;
dg.DataBind();
dg.HeaderStyle.BackColor = System.Drawing.Color.FromArgb(iHeaderColor);
dg.HeaderStyle.Font.Bold = true;
dg.HeaderStyle.Font.Size = 10;
Очевидно, что всякий раз, когда компания проходит еще один «ребрендинг» и меняются значения таблицы стилей, цвета Excel автоматически совпадают, и я получаю большое (похлопывание по спине || cookie).
Есть какие-нибудь мысли от людей из C #, которые знают больше, чем я (а это большинство из вас…)?
Спасибо,
Michael