【问题标题】:How to change the path of picture into picture in GridView?如何在GridView中将图片的路径改为图片?
【发布时间】:2014-01-06 02:58:10
【问题描述】:

我需要将 Prod_Picture 显示为图片,而不是路径文本。我无法在 GridView 中设置属性,因为我将此代码绑定到 GridView 并且没有在那里创建任何列。

    protected void Page_Load(object sender, EventArgs e)
    {
        var item = from c in db.Products
                   join o in db.ProductCategories
                   on c.ProdC_ID equals o.ProdC_ID
                   select new
                   {
                       ProductID = c.Prod_ID,
                       ProductName = c.Prod_Name,
                       Price = c.Prod_Price,
                       Amount = c.Prod_Amount,
                       Picture = c.Prod_Picture,
                       ProductDetail = c.Prod_Detail,
                       ProductCategory = o.ProdC_Name
                   };
        GridView1.DataSource = item;
        GridView1.DataBind();
    }

这里是GridView的源代码:

    <asp:GridView ID="GridView1" runat="server">
    </asp:GridView>

请帮忙!!

【问题讨论】:

  • 你能显示你的 ASP 代码吗?
  • 我只是添加源代码。对吗?

标签: c# asp.net linq gridview


【解决方案1】:

您可以参考以下主题:

Displaying Images from a Database in a GridView

对 gridview 执行以下操作:

  1. 取消选中自动生成字段
  2. 为 UserName 和 Country 使用两个 BoundFields
  3. 设置标题文本和数据字段(数据库中的字段名称)
  4. 对图像使用 ImageField 并设置 DataImageUrlField = 图像字段名称
  5. 点击确定

【讨论】:

  • 嗨,我是编码新手,你给我看的这个是使用 sql。我如何将其应用于 linq?我也不能在 GridView 中设置属性,因为 GridView 没有与 LinqDataSource 绑定,但它与上面的代码绑定。
  • 我明白了,但是数据绑定是一样的。尝试遵循gridview的配置。
  • @user3162003 这是另一个链接,可以引导您完成获取图像的过程。 msdn.microsoft.com/en-us/library/aa479350.aspx
  • 谢谢,我只是试试。我现在可以了:)
【解决方案2】:

我认为您将图像 URL 存储为 Prod_Picture。 那样的话

<asp:BoundField DataField="Prod_Name" HeaderText="Prod_Name" />

<asp:BoundField DataField="Prod_Price" HeaderText="Prod_Price" />

<asp:TemplateField HeaderText="Image">

 <ItemTemplate>

 <asp:Image ID="Image1" ImageUrl='<%# (string) FormatImageUrl( (string) Eval("Prod_Picture")) %>' runat="server" />

</ItemTemplate>

</asp:TemplateField>

</Columns>

<FooterStyle BackColor="#FFFFCC" ForeColor="#330099" />

<RowStyle BackColor="White" ForeColor="#330099" />

<SelectedRowStyle BackColor="#FFCC66" Font-Bold="True" ForeColor="#663399" />

<PagerStyle BackColor="#FFFFCC" ForeColor="#330099" HorizontalAlign="Center" />

<HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="#FFFFCC" />

</asp:GridView>

这会起作用

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-01-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-11
    • 2019-10-27
    • 2020-04-18
    相关资源
    最近更新 更多