Нужна помощь по реализации RepeatColumns DataList в GridView! - PullRequest
0 голосов
/ 21 апреля 2011

По умолчанию в элементе управления GridView отсутствует свойство RepeatColumns, позволяющее нам добавлять дополнительные ячейки в строки, как это делается в DataList.
Я мог бы использовать DataList, но у него нет поддержки пейджеров, которая мне действительно нужна. Поэтому я ищу способ добавить такую ​​функцию в GridView. Так что теперь я придумаю:

protected void GvwCollection_DataBound(object sender, EventArgs e)
    {
        for (int i = 0; i <= GvwCollection.Rows.Count; i++)
        {
            int x = 0;
            int y = 0;

            x = i % 4;
            if (i != 0 && x != 0)
            {
                try
                {
                    GvwCollection.Rows[y].Cells.Add(GvwCollection.Rows[i].Cells[0]);
                }
                catch { }
            }
            else { y = i; }
        }
    }

Но это не работает так, как должно было быть.
Наконец, мне нужно получить что-то вроде этого (4 ячейки подряд):

1 | 2  | 3  | 4
5 | 6  | 7  | 8
9 | 10 | 11 | 12

Ответы [ 3 ]

1 голос
/ 21 апреля 2011

Почему бы не использовать ListView - он может отображаться в соответствии с вашими требованиями. См. это и это .

Кстати, вы также можете выполнять пейджинг с DataList без использования элемента управления DataPager - см. this

1 голос
/ 24 августа 2012

попробуйте

protected void dgEmp_DataBound(object sender, EventArgs e)
{
    int y = 0;
    for (int i = 0; i < dgEmp.Rows.Count; i++)
    {

        if (i%4 ==0 && i!=0)
        {
            y++;
       }
        dgEmp.Rows[y].Cells.Add(dgEmp.Rows[i].Cells[0]);

    }
}
0 голосов
/ 21 апреля 2011

Используйте серверный элемент управления Table и постройте все строки / столбцы программно. Это будет самый простой подход, поскольку у вас будет полный контроль над пользовательским интерфейсом. Сетка не предназначена для этого.

НТН.

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