Отображение gridview с 3 столбцами - PullRequest
0 голосов
/ 01 сентября 2011

У меня есть галерея, в которой хранится большое количество миниатюрных изображений, и я хочу показать одновременно 6.

У меня это работает, используя код ниже, но я не могу заставить изображения отображаться как2 строки по 3 - это показывает как 6 строк по 1.

Я могу получить желаемый результат, используя список данных, но это останавливает работу функции pageindex.

Я уверен, что естьпростое решение, но я не могу понять это.

<asp:GridView id="GridView1" runat="server" AutoGenerateColumns="False" AllowPaging="True" PageSize="6" onpageindexchanging="PageIndexChanged" PagerSettings-Mode="NextPrevious" PagerSettings-NextPageText="Next"  PagerSettings-PreviousPageText="Previous">
    <Columns>
        <asp:TemplateField>
            <itemtemplate>
                <asp:Image ID="Image2" runat="server" ImageUrl='<%# Eval("userID", "/imageUpload/Handler.ashx?userID={0}&image=2")%>' ></asp:Image>
            </itemtemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

Ответы [ 3 ]

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

Вы хотите использовать ListView. Посмотрите MSDN здесь: http://msdn.microsoft.com/en-us/library/bb398790.aspx В частности, опция GROUPING.

0 голосов
/ 01 сентября 2011

Вы, вероятно, были бы счастливее с другим элементом управления (повторитель и т.* иметь чтобы сделать это в виде сетки по какой-то причине, один из вариантов - изменить SELECT в вашем источнике данных так, чтобы он помещал ваши изображения в 3 столбца.Вы можете сделать это с помощью функций pivot и rownumber () или другими способами.Сделав это, вы измените свой grideview (скопируйте столбец шаблона еще два раза).

0 голосов
/ 01 сентября 2011

Возможно, вы захотите использовать простой элемент управления ретранслятором asp.net и визуализировать ваши элементы как DIV.Вы можете использовать CSS-директиву «float», чтобы заставить ваши DIV'ы автоматически «переносить» их контейнер, чтобы эффективно разместить пространство (очень похоже на то, как текст «оборачивается» внутри текстового поля, когда он достигает конца строки).

Поскольку они динамически переносятся, плавающие DIV могут быть немного более удобными для пользователя: если у вашего пользователя широкий экран с высоким разрешением, возможно, изображения отображаются в виде строки 1x6.Если ваш пользователь сузит окно своего браузера, DIV автоматически перегруппируют себя в сетку 3x2.

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

...