Отображен данных главн-подчинённ табл в WebForns
Добавлено: 09 апр 2007, 08:42
Надо в WEB-форме разработать интерфейс для отображения записей главной и подчинённых таблиц.
При работе с ADO NET в Visual Studio NET 2003 я пришел к выводу, что
1)Набор свойств Элем DataGrid для WEBForms (System.Web.UI.WebControls.DataGrid) и DataGrid для .WindowsForms (System.Windows.Forms.DataGrid) различен
. – Это фактически 2 разных элемента с разной техникой связывания. Различия:
- в меню Property Builder у 1-го,
- в наличии свойства CaptionText у 2-го
- в наличии коллекции TableStyles у 2-го
- в наличии автоматического скроллинга без изменения высоты у 2-го и отсутствии его с автоматическим расширением высоты для WEBForms DataGrid
Неудачной для меня оказалась попытка применения приёма : синхронизации 2 DataGrid для отображения записей главной и подчиненной таблиц (с тем, чтоб при движении по главной отображались только соответствующие записи подчиненной) (см. напр Шумаков, “ADO NET”) После генерации датасета и установки в нем ограничения типа foreign key отличие для WEBForms от WindowsForms заключалось в том, что
А) столбец с именем этого ограничения появляется в DataGrid –ах
Б) в окне свойства DataMember мы не видим для имени главной табл раскрытия по +
(для Windows Form после раскрытия мы могли в качестве DataMember выбрать имя установленного ограничения) и не можем установить DataMember=имяОграничения
(попытка принудительного ввода имени Ограничения приводит к ошибке парсера при выполнении *.aspx).
В связи с этим вопрос, я отказался от такого пути построения интерфейса для WEB Form
И использовал интерфейс на основе ComboBox и DropDownList с последующей обработкой события выбора в нем SelectedIndexChanged и заполнения данными с помощью SQLCommand c SELECT c параметрами и заполнения элемента, отображающего данные подчиненной табл с помощью DataReader
Прав ли я или всё-таки можно для WEB Forms связать 2 DataGrid ? (что конечно более привлекательно)
При работе с ADO NET в Visual Studio NET 2003 я пришел к выводу, что
1)Набор свойств Элем DataGrid для WEBForms (System.Web.UI.WebControls.DataGrid) и DataGrid для .WindowsForms (System.Windows.Forms.DataGrid) различен
. – Это фактически 2 разных элемента с разной техникой связывания. Различия:
- в меню Property Builder у 1-го,
- в наличии свойства CaptionText у 2-го
- в наличии коллекции TableStyles у 2-го
- в наличии автоматического скроллинга без изменения высоты у 2-го и отсутствии его с автоматическим расширением высоты для WEBForms DataGrid
Неудачной для меня оказалась попытка применения приёма : синхронизации 2 DataGrid для отображения записей главной и подчиненной таблиц (с тем, чтоб при движении по главной отображались только соответствующие записи подчиненной) (см. напр Шумаков, “ADO NET”) После генерации датасета и установки в нем ограничения типа foreign key отличие для WEBForms от WindowsForms заключалось в том, что
А) столбец с именем этого ограничения появляется в DataGrid –ах
Б) в окне свойства DataMember мы не видим для имени главной табл раскрытия по +
(для Windows Form после раскрытия мы могли в качестве DataMember выбрать имя установленного ограничения) и не можем установить DataMember=имяОграничения
(попытка принудительного ввода имени Ограничения приводит к ошибке парсера при выполнении *.aspx).
В связи с этим вопрос, я отказался от такого пути построения интерфейса для WEB Form
И использовал интерфейс на основе ComboBox и DropDownList с последующей обработкой события выбора в нем SelectedIndexChanged и заполнения данными с помощью SQLCommand c SELECT c параметрами и заполнения элемента, отображающего данные подчиненной табл с помощью DataReader
Прав ли я или всё-таки можно для WEB Forms связать 2 DataGrid ? (что конечно более привлекательно)