Шаг 139 - Добавляем стили на лету

Стили добавлять мы научились попробуем, теперь изменять стили на "лету". Добавим в таблице ещё один стиль, который бы отображал Id покупателя вместо его имени.

DataGridTableStyle ts1 = new DataGridTableStyle();
ts1.MappingName = "Customers";
if(ts1.GridColumnStyles.Count == 0)
{
	DataGridTextBoxColumn gc1 = new DataGridTextBoxColumn();
	ts1.GridColumnStyles.Add(gc1);
	gc1.MappingName = "customer_id";
	gc1.HeaderText = "Id покупателя";

Попробуем откомпилировать проект и попробуем запустить, у нас возникнет ошибка так как к одной таблице в базе можно применять только один стиль в текущий момент. Поэтому

ts1.MappingName = "";

Добавим теперь к форме кнопку, при нажатии на которую теперь бы у нас изменялся стиль отображения данных на другой. Вот тело функции

FirstSecond = !FirstSecond;
ShowTables.TableStyles[0].MappingName = "";
ShowTables.TableStyles[1].MappingName = "";
if(FirstSecond)
{
	ShowTables.TableStyles[0].MappingName = "Customers";
}
else
{
	ShowTables.TableStyles[1].MappingName = "Customers";     
}

Сперва мы установим для обеих MappingName в "", чтобы не возникало проблем

ShowTables.TableStyles[0].MappingName = "";
ShowTables.TableStyles[1].MappingName = "";

И затем установим нужный стиль присвоив MappingName имя таблицы.

gif/139_1.gif (5052 b)


Загрузить проект | Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Leonid Molochniy - 23.10.2001