Модераторы: gambit, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> dataRepeater 
V
    Опции темы
GhosTer
Дата 15.12.2011, 14:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 31.5.2007

Репутация: нет
Всего: нет



Народ. А кто работал с dataRepeater ?
Подскажите как его связать не с таблицей в базе а с массивом к примеру.
Ну или что то на подобии. Так что бы можно было его использовать без баз данных...
PM MAIL   Вверх
Fortnox
Дата 15.12.2011, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 373
Регистрация: 31.10.2008
Где: Ростов-на-Дону

Репутация: 2
Всего: 22



Так и в чем проблема конкретно? Связывайте.
PM MAIL   Вверх
GhosTer
Дата 16.12.2011, 07:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 31.5.2007

Репутация: нет
Всего: нет



Fortnox, гениальность ваше ответа просто убивает...

Мне кажется я вполне конкретно попросил:
Цитата

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


Так вот я решил для себя маленький вопрос о связке.
Решил связывать так:
Код

           DataTable table = new DataTable("childTable");
            DataColumn column;
            DataRow row;

            column = new DataColumn();
            column.ColumnName = "COLONNA";
            column.Caption = "ID";
            table.Columns.Add(column);

            for (int x = 0; x < 10; x++)
            {
                row = table.NewRow();

                //row["ChildID"] = null;

                table.Rows.Add(row);
            }

            for (int x = 0; x < 10; x++)
            {
                table.Rows[x]["COLONNA"] = x;
            }

            dataRepeater1.DataSource = table;



Но вопрос все таки остается открытым...
На dataRepeater1.ItemTemplate размещен label1.

Как заставить, в этом label1, выводить содержание ячейки?

Fortnox, жирным шрифтом в конце выделен вопрос.

Буду очень признателен за ответ.
PM MAIL   Вверх
Fortnox
Дата 16.12.2011, 10:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 373
Регистрация: 31.10.2008
Где: Ростов-на-Дону

Репутация: 2
Всего: 22



GhosTer, предыдущее сообщение было к тому, что в качестве источника данных может выступать и коллекция. Например:
Код

    class User
    {
        public int ID { get; set; }
        public string Name { get; set; }
    }

    List<User> users = new List<User>();
    users.Add(new User { ID = 1, Name = "John" });
    users.Add(new User { ID = 2, Name = "Adam" });
    users.Add(new User { ID = 3, Name = "Bres" });

    label1.DataBindings.Add(new Binding("Text", users, "Name")); // label1 - label в DataRepeater
    dataRepeater1.DataSource = users;

Для отображения достаточно указать биндинг: к какому свойству, источник и имя члена класса для значения.
PM MAIL   Вверх
GhosTer
Дата 16.12.2011, 11:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 31.5.2007

Репутация: нет
Всего: нет



Спасибо, Fortnox.
Правда уже сам разобрался.

Код

            DataTable table = new DataTable("childTable");
            DataColumn column;
            DataRow row;

            column = new DataColumn();
            column.ColumnName = "COLONNA";
            column.Caption = "ID";
            table.Columns.Add(column);

            for (int x = 0; x < 3; x++)
            {
                row = table.NewRow();
                table.Rows.Add(row);
            }

            table.Rows[0]["COLONNA"] = "Silver";
            table.Rows[1]["COLONNA"] = "Maroon";
            table.Rows[2]["COLONNA"] = "Yellow";

            label1.DataBindings.Add(new Binding("Text", table, "childTable.COLONNA"));

            dataRepeater1.DataSource = table;


cмысл тот же но с таблицей.

Но все же было бы интересно как это сделать с массивом типа: 
Код

string[][] massiv = new string[3][]{new string[2]{"1","2"},new string[2]{"3","4"},new string[2]{"5","6"}};

единственное что придумал это выгнать его в таблицу а потом в репитер.
PM MAIL   Вверх
Fortnox
Дата 16.12.2011, 12:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 373
Регистрация: 31.10.2008
Где: Ростов-на-Дону

Репутация: 2
Всего: 22



GhosTer, можно перегнать в список, например:
Код


            List<KeyValuePair<string, string>> list = new List<KeyValuePair<string, string>>();

            for (int i = 0; i <= massiv.LongLength - 1; ++i)
            {
                list.Add(new KeyValuePair<string,string>(massiv[i][0], massiv[i][1]));
            }

            label1.DataBindings.Add(new Binding("Text", list, "Key"));
            textBox1.DataBindings.Add(new Binding("Text", list, "Value"));
            dataRepeater1.DataSource = list;



Это сообщение отредактировал(а) Fortnox - 16.12.2011, 12:12
PM MAIL   Вверх
GhosTer
Дата 16.12.2011, 12:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 31.5.2007

Репутация: нет
Всего: нет



Как вариант конечно можно и в список.
Но у меня изначально не известен размер вложенного в массив массива...
Хотя тоже как вариант. Но мне кажется что под  DataTable выделяется меньше памяти.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка Windows Forms | Следующая тема »


 




[ Время генерации скрипта: 0.0828 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.