Шрифт ячейки Resulttable
Здравствуйте.
Столкнулся с тем, что некорректно меняется шрифт в ячейке таблицы ResultTable. При изменении шрифта в одной ячейке он меняется во всём столбце.
string font1 = "50: " + Table1.ResultTable.Rows[5][0].Font.Bold + "," + "60: " + Table1.ResultTable.Rows[6][0].Font.Bold;
Table1.ResultTable.Rows[5][0].Font = new System.Drawing.Font("Times New Roman", 10);
string font2 = "50: " + Table1.ResultTable.Rows[5][0].Font.Bold + "," + "60: " + Table1.ResultTable.Rows[6][0].Font.Bold;
Table1.ResultTable.Rows[5][0].Font = new System.Drawing.Font("Times New Roman", 10, FontStyle.Bold);
string font3 = "50: " + Table1.ResultTable.Rows[5][0].Font.Bold + "," + "60: " + Table1.ResultTable.Rows[6][0].Font.Bold;
MessageBox.Show(font1 + "\r\n" + font2 + "\r\n" + font3);
Этот код даёт такой результат:
50: true,60: true
50: false,60: false
50: true,60: true
Хотя должно быть:
50: true,60: true
50: false,60:true
50: true,60:true
Столкнулся с тем, что некорректно меняется шрифт в ячейке таблицы ResultTable. При изменении шрифта в одной ячейке он меняется во всём столбце.
string font1 = "50: " + Table1.ResultTable.Rows[5][0].Font.Bold + "," + "60: " + Table1.ResultTable.Rows[6][0].Font.Bold;
Table1.ResultTable.Rows[5][0].Font = new System.Drawing.Font("Times New Roman", 10);
string font2 = "50: " + Table1.ResultTable.Rows[5][0].Font.Bold + "," + "60: " + Table1.ResultTable.Rows[6][0].Font.Bold;
Table1.ResultTable.Rows[5][0].Font = new System.Drawing.Font("Times New Roman", 10, FontStyle.Bold);
string font3 = "50: " + Table1.ResultTable.Rows[5][0].Font.Bold + "," + "60: " + Table1.ResultTable.Rows[6][0].Font.Bold;
MessageBox.Show(font1 + "\r\n" + font2 + "\r\n" + font3);
Этот код даёт такой результат:
50: true,60: true
50: false,60: false
50: true,60: true
Хотя должно быть:
50: true,60: true
50: false,60:true
50: true,60:true
Комментарии
В ResultTable применена работа со стилями, т.е. несколько ячеек с одинаковым стилем представлены физически одним объектом TableCell. Это позволяет экономить память при большом размере таблицы, но накладывает некоторые ограничения на работу с ней. Стиль отдельной ячейки в ResultTable менять нельзя.