Класс DataView позволяет создавать различные представления данных таблицы. Первый столбец служит источником данных списка марок. В зависимости от выбранной модели, в список моделей загружается одна из 2-5 колонок.
Вначале создается таблица:
Cars = new DataTable(); Cars.Columns.Add(new DataColumn("Brand", typeof(string)));
Здесь вызывается один из конструкторов DataColumn. Первый аргумент — название колонки, второй — тип:
CarRow = Cars.NewRow();
Создается новая строка таблицы. Ячейка таблицы задается с помощью индекса строки:
CarRow[6]= "Power seat";
И строка добавляется в таблицу:
Cars.Rows.Add(CarRow);
У выпадающего списка марок установлено свойство AutoPostBack. Это значит, что страница автоматически подается на сервер, когда в этом списке меняется выбранный элемент.
В обработчике выбора нового элемента вначале выясняется, какой элемент выбран:
string selected = DropDownList1.SelectedItem.Value;
В операторе switch происходит переключение второго списка на один из столбцов таблицы заданием свойств DataTextField и DataValueField, где DataTextField — текст, отображаемый в списке, а DataValueField — выбранное значение. В данном случае, как часто бывает, они одинаковы.