Как использовать IListSource, IEnumerable или IDataSource - PullRequest
0 голосов
/ 31 октября 2011

Я искал в Google и StackOverflow ответ - нашел похожие темы, в том числе вопросы с заголовками similr, но они кажутся мне не совсем понятными или неясными.

Я пытаюсь назначить объект в качестве источника данных таблицы. Я могу сделать это, создав таблицу и записав значения следующим образом:

Do FromVal( 0 ) ToVal( ORD_Array.OrderList.Length - 1 ) Index( IX )  
ORD_Record = ORD_Array.OrderList[IX]  
Ord_BLTz00 = ORD_Record.BLTz00  
Ord_ORDz00 = ORD_Record.ORDz00  
Ord_BLTA00 = ORD_Record.BLTA00  
Ord_SHPA00 = ORD_Record.SHPA00  
Ord_SNAM00 = ORD_Record.SNAM00  

GridView1.DataSource = OrderMem.Dataset.Tables["OrdMf"]  
GridView1.DataBind()  
EndDo  

Это работает, но я уверен, что я могу назначить ORD_Record напрямую в качестве источника данных, кроме как сначала преобразовать его в допустимый тип - в противном случае я получаю ошибку. Может кто-нибудь объяснить, что мне нужно сделать для ORD_Record, чтобы преобразовать его в тип, который может быть связан с сеткой данных, спасающей меня от создания таблиц?

1 Ответ

1 голос
/ 01 ноября 2011

Ваш код несколько запутан в отношении вопроса.Вы перебираете все записи в ORD_Array, но затем назначаете источник данных сетки для каждого цикла.Кроме того, вы пометили вопрос как VB.Net, но вы используете какой-то синтаксис, который я не распознаю.

Однако, если вы хотите, чтобы каждая из записей в ORD_Array отображалась в сетке, тогда чтовам нужно переместить команды GridView1 Dataxxx за пределы цикла и назначить источник данных ORD_Array (который, вероятно, реализует IEnumerable).

Если вы хотите, чтобы в сетке был назначен только один из ORD_Records, то вынужно будет определить, как определить, какой из них должен быть показан в массиве, извлечь его из массива в источник IEnumerable (вы можете использовать общий список или даже ArrayList), а затем назначить его в качестве источника данных для GridView.

Обновление с ответом:

Вы также можете сначала попытаться присвоить ORD_Array.OrderList непосредственно источнику данных, если он перечислим.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...