2015-10-30 3 views
0

я имею вид сетки из трех столбцов, на нем я только нужно сделать галерею фотографий, которые я принести изображения из базы данныхПросмотр изображений в GridView из базы данных

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource1"> 
    <Columns> 
     <asp:TemplateField> 
      <EditItemTemplate> 
       <asp:TextBox ID="TextBox1" Width="200px" Height="200px" runat="server" Text='<%#Eval("imageUrl")%>'></asp:TextBox> 
      </EditItemTemplate> 
      <ItemTemplate> 
       <asp:Image ID="Image1" Width="200px" Height="200px" runat="server" ImageUrl='<%#Eval("imageUrl")%>' /> 
      </ItemTemplate> 
     </asp:TemplateField> 
     <asp:TemplateField> 
      <EditItemTemplate> 
       <asp:TextBox ID="TextBox1" Width="200px" Height="200px" runat="server" Text='<%#Eval("imageUrl")%>'></asp:TextBox> 
      </EditItemTemplate> 
      <ItemTemplate> 
       <asp:Image ID="Image1" Width="200px" Height="200px" runat="server" ImageUrl='<%#Eval("imageUrl")%>' /> 
      </ItemTemplate> 
     </asp:TemplateField> 
     <asp:TemplateField> 
      <EditItemTemplate> 
       <asp:TextBox ID="TextBox1" Width="200px" Height="200px" runat="server" Text='<%#Eval("imageUrl")%>'></asp:TextBox> 
      </EditItemTemplate> 
      <ItemTemplate> 
       <asp:Image ID="Image1" Width="200px" Height="200px" runat="server" ImageUrl='<%#Eval("imageUrl")%>' /> 
      </ItemTemplate> 
     </asp:TemplateField> 
    </Columns> 

</asp:GridView> 
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="Data Source=BASSAM-PC\SQLEXPRESS;Initial Catalog=fame;Persist Security Info=True;User ID=sa;Password=root" ProviderName="System.Data.SqlClient" SelectCommand="SELECT [imageURL] FROM [studentNew] WHERE ([type] = @type)"> 
    <SelectParameters> 
     <asp:Parameter DefaultValue="gallary" Name="type" Type="String" /> 
    </SelectParameters> 
</asp:SqlDataSource> 

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

+0

Он появляется 3 раза, потому что у вас есть шаблон для него три раза. Что ты пытаешься сделать? «Я хочу поменять один за другим в каждом столбце», не имеет для меня никакого смысла. –

+0

что я хочу для exmple: у меня есть 9 фотографий, и я хочу показать их в виде сетки, каждая из трех из них на одной строке мой код позволяет тому же изображению приходить три раза и получать 9 строк Я хочу, чтобы они были только три строки в каждой строке имеют три элемента –

ответ

0

я нашел решение, изменение использовать элемент списка вместо вид сетки

<asp:ListView ID="ImageListView" runat="server" ItemPlaceholderID="itemPlaceHolder" GroupPlaceholderID="groupPlaceHolder" OnItemCommand="ImageListView_ItemCommand"> 
    <LayoutTemplate> 
     <h1> 
      <asp:Label Text="" runat="server" ID="titleLabel" OnLoad="titleLabel_Load" /> 
     </h1> 
     <div runat="server" id="groupPlaceHolder"> 
     </div> 
    </LayoutTemplate> 
    <GroupTemplate> 
     <span> 
      <div id="itemPlaceHolder" runat="server"></div> 
     </span> 
    </GroupTemplate> 
    <ItemTemplate> 
     <asp:ImageButton ID="itemImageButton" runat="server" 
      CommandArgument="<%# Container.DataItem %>" 
      ImageUrl="<%# Container.DataItem %>" Width="320" Height="240" 
      OnCommand="itemImageButton_Command" /> 
     <asp:LinkButton ID="deleteLinkButton" runat="server" CommandName="Remove" 
      CommandArgument="<%# Container.DataItem %>" Text="Delete" Visible="false" 
      OnLoad="deleteLinkButton_Load" /> 
    </ItemTemplate> 
    <EmptyItemTemplate> 
     <td /> 
    </EmptyItemTemplate> 
    <EmptyDataTemplate> 
     <h3>No images available</h3> 
    </EmptyDataTemplate> 
    <InsertItemTemplate> 
     <p> 
      <asp:Label Text="Please upload an image" runat="server" ID="imageUploadLabel" /> 
      <asp:FileUpload runat="server" ID="imageUpload" OnLoad="imageUpload_Load" /> 
      <asp:Button ID="uploadButton" Text="Upload" runat="server" /> 
     </p> 
     <p> 
      <asp:Label Text="" runat="server" ID="imageUploadStatusLabel" /> 
     </p> 
    </InsertItemTemplate> 
</asp:ListView> 

и весь код в код файла

для более подробно вы можете ниже ссылку create an image grid

Смежные вопросы