powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Двумерный массив в DataList
8 сообщений из 8, страница 1 из 1
Двумерный массив в DataList
    #34032914
Tracer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть двумерный массив.

Нужно отобразить каждую строку массива в строке DataList, соответственно каждый элемент в отдельном контроле на темплейт Даталиста.

Выводит по очереди каждый элемент массива в каждой строке DataList.

Вывожу так




            DataList1.DataSource = myArr;
            DataList1.DataBind();
Привязываю:
                    <asp:Label ID="Label11" runat="server" Text='<%# Container.DataItem %>'></asp:Label>

Пытался создавать одномерный массив массив объектов со свойствами соответствующими и привязывать таким образом
                    <asp:Label ID="Label11" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "RoomId") %>'></asp:Label>



Выдает ошибку
DataBinding: 'System.String' does not contain a property with the name 'RoomId'.

Каким образом можно решить эту задачу?
...
Рейтинг: 0 / 0
Двумерный массив в DataList
    #34033081
Dimon aka Manowar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробуй массив массивов использовать, ну и при биндинге приводить Container.DataItem к правильному типу массива

Многие вещи нам непонятны не оттого, что наши понятия слабы, а оттого, что данные вещи не входят в круг наших понятий.
...
Рейтинг: 0 / 0
Двумерный массив в DataList
    #34035436
Tracer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что вообще содержится в Container.DataItem если я DataSource присваиваю массив?
У меня массив объектов ListRoom
Если пишу так:



 <asp:Label ID="Label11" runat="server" Text='<%# (Container.DataItem as ListRoom).RoomId%>'></asp:Label>

Ошибка Object reference not set to an instance of an objectЕсли так:
<asp:Label ID="Label11" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "RoomId") %>'></asp:Label>


То ошибка

DataBinding: 'ListRoom' does not contain a property with the name 'RoomId'

Свойство RoomId естественно есть...
...
Рейтинг: 0 / 0
Двумерный массив в DataList
    #34035498
monstrU
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может вот так?
<asp:Label ID="Label11" runat="server" Text='<%# Container.DataItem[0] %>'></asp:Label>
<asp:Label ID="Label12" runat="server" Text='<%# Container.DataItem[1] %>'></asp:Label>
...
Рейтинг: 0 / 0
Двумерный массив в DataList
    #34035618
Tracer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может вот так?
<asp:Label ID="Label11" runat="server" Text='<%# Container.DataItem[0] %>'></asp:Label>
<asp:Label ID="Label12" runat="server" Text='<%# Container.DataItem[1] %>'></asp:Label>

Увы
'System.Web.UI.WebControls.DataListItem.DataItem' is a 'property' but is used like a 'method' D:\PROJECTS\BukovelWEB\WEB\Default.aspx 204
...
Рейтинг: 0 / 0
Двумерный массив в DataList
    #34036037
Dimon aka Manowar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А какой язык у сайта? Может васик? тогда нужно CType использовать для приведения типа.

Многие вещи нам непонятны не оттого, что наши понятия слабы, а оттого, что данные вещи не входят в круг наших понятий.
...
Рейтинг: 0 / 0
Двумерный массив в DataList
    #34036709
Tracer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А какой язык у сайта? Может васик? тогда нужно CType использовать для приведения типа.


язык C#

Проблему решил так - создал DataTable с нужной мне структурой, загнал данные из массива и на датасоурс листа передал эту таблицу.
...
Рейтинг: 0 / 0
Двумерный массив в DataList
    #34086310
dm.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На самом деле все банальнее, можно использовать и custom datasource:

для приведенного случая:
<%# ((ListRoom)Container.DataItem).RoomId %>

примечание: вместо ListRoom надо подставить полный путь к классу (namespace), если он не в той же сборке.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Двумерный массив в DataList
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]