我在做C#.net的web网页应用开发
数据库中存有手机信息以及相应的图片路径,数据库存的是图片相对路径,如:~/Images/1.jpg,然后想用个gridview模板把手机的信息以及其对应的图片显示出来,形成个列表。下面是前台代码:
<asp:GridView ID="GridView1" runat="server" Width="100%"   
                AutoGenerateColumns="False" Font-Size="Small" Height="16px" 
                            style="margin-right: 0px" 
            EmptyDataText="No Records" PageSize="5" ShowHeader="False" onselectedindexchanged="GridView1_SelectedIndexChanged" 
                >
                        <Columns>
                            <asp:TemplateField>                               
                                <ItemTemplate>
                                    <table style=" border:1px thin solid #6699FF; width:100%"  >
                                         <tr>
                                            <td style="border-color: #00FFFF; height: 19px; text-align: left;"> 
                                               
                    Product ID:<font color='#FF0000'><%# DataBinder.Eval(Container.DataItem, "pid")%></font>&nbsp; &nbsp;
                    Product Name:<font color='#FF0000'><%# DataBinder.Eval(Container.DataItem, "pname")%></font>&nbsp; &nbsp;Model:<font color='#FF0000'><%# DataBinder.Eval(Container.DataItem, "model")%></font><br />color:<font color='#FF0000'><%# DataBinder.Eval(Container.DataItem, "color")%></font>&nbsp; &nbsp; Material Quality:<font color='#FF0000'><%# DataBinder.Eval(Container.DataItem, "materialquality")%></font>Quantity:<font color='#FF0000'><%# DataBinder.Eval(Container.DataItem, "quantity")%></font><br />Import Price: <font color='#FF0000'><%# DataBinder.Eval(Container.DataItem, "importprice")%></font>&nbsp; &nbsp; Sale Price: <font color='#FF0000'><%# DataBinder.Eval(Container.DataItem, "saleprice")%></font>&nbsp; &nbsp; Supplier <font color='#FF0000'><%# DataBinder.Eval(Container.DataItem, "supplier")%></font>&nbsp; &nbsp;
                    <br />Image:<font color='#FF0000'><%# DataBinder.Eval(Container.DataItem, "image")%></font>&nbsp; &nbsp; Description: <font color='#FF0000'><%# DataBinder.Eval(Container.DataItem, "description")%></font>&nbsp; &nbsp;</tr>
                               
                 
                  <asp:Image ID="Image1" runat="server" ImageUrl='<%# DataBinder.Eval(Container.DataItem, "image").ToString)%>'/>
             </table>
                                </ItemTemplate>
                            </asp:TemplateField>
                        </Columns>
                    </asp:GridView>后台代码:
        protected void bind()
        {
            String qs = "select  pid, pname, model, color, materialquality, importprice, saleprice, quantity, supplier, image, description from product ";
            DB dbb = new DB();
            
            DataSet ds = dbb.GetData(qs);//GetData(queryString);
            if (ds.Tables.Count > 0)
                {
                    GridView1.DataSource = ds;
                    GridView1.DataBind();
                    Label1.Text = "OK";
                }
            Panel1.Visible = true;
        
         }
其中image存的就是图片路径红色字段出现错误,关键就是我不知道如何绑定图片路径到gridview下的image空间,用imagefield貌似也不行
有哪位大大能告诉我怎么将数据库中的图片路径绑定到gridview模板中的一个image控件上。

解决方案 »

  1.   

    <asp:Image ID="Image1" runat="server" ImageUrl='<%# DataBinder.Eval(Container.DataItem, "image").ToString()%>'/>
    少了一般括号
      

  2.   

    如果是第三方控件的话:
    <dx:ASPxGridView ID="grid" SettingsBehavior-ColumnResizeMode="Control" runat="server"
            Width="100%" KeyFieldName="MI_ID" OnCustomCallback="grid_CustomCallback" EnableTheming="True"
            AutoGenerateColumns="False" ClientIDMode="Static">
            <ClientSideEvents EndCallback="function(s,e) {RaiseContentResizedEvent(1);}" RowClick="function(s, e) {if(grid.IsDataRow(e.visibleIndex)){ ShowMessageViewer(s.keys[e.visibleIndex]);}}" />
            <Columns>
                <dx:GridViewCommandColumn ShowSelectCheckbox="True" VisibleIndex="0" Width="30px">
                    <HeaderTemplate>
                        <dx:ASPxCheckBox ID="SelectAllCheckBox" runat="server" ToolTip="全选/全不选" ClientSideEvents-CheckedChanged="function(s, e) { grid.SelectAllRowsOnPage(s.GetChecked()); }" />
                    </HeaderTemplate>
                </dx:GridViewCommandColumn>
                <dx:GridViewDataTextColumn Caption="ID" FieldName="MI_ID" Visible="False" VisibleIndex="1"
                    Width="40px">
                    <CellStyle HorizontalAlign="Center">
                    </CellStyle>
                </dx:GridViewDataTextColumn>
                <dx:GridViewDataDateColumn Caption="阅" VisibleIndex="2" Name="阅" Width="30px">
                    <DataItemTemplate>
                        <asp:Image runat="server" ID="refer" ImageUrl='<%# Eval("imgurl") %>' />
                    </DataItemTemplate>
                </dx:GridViewDataDateColumn>
                <dx:GridViewDataDateColumn Caption="类" VisibleIndex="3" Name="类" Width="30px">
                    <DataItemTemplate>
                        <asp:Image runat="server" ID="image" ImageUrl='<%# ReturnImageUrl( Eval("MI_Type").ToString()) %>' />
                    </DataItemTemplate>
                </dx:GridViewDataDateColumn>
                <dx:GridViewDataDateColumn Caption="附" VisibleIndex="4" Name="附" Width="30px">
                    <DataItemTemplate>
                        <asp:Image runat="server" ID="imag" ImageUrl='<%# ImageReturnurl( Eval("MI_AttachPath").ToString()) %>' />
                    </DataItemTemplate>
                </dx:GridViewDataDateColumn>
                <dx:GridViewDataTextColumn Caption="摘要" FieldName="MI_Subject" VisibleIndex="5" Name="摘要">
                    <CellStyle HorizontalAlign="Left">
                    </CellStyle>
                </dx:GridViewDataTextColumn>
                <dx:GridViewDataTextColumn Caption="阅读时间" FieldName="MR_ReadTime" VisibleIndex="6"
                    Width="130px" Name="阅读时间">
                    <PropertiesTextEdit DisplayFormatString="yyyy-MM-dd hh:mm:ss">
                    </PropertiesTextEdit>
                    <CellStyle HorizontalAlign="Center">
                    </CellStyle>
                </dx:GridViewDataTextColumn>
                <dx:GridViewDataTextColumn Caption="发送时间" FieldName="MI_SendTime" VisibleIndex="7"
                    Width="130px" Name="发送时间">
                    <PropertiesTextEdit DisplayFormatString="yyyy-MM-dd hh:mm:ss">
                    </PropertiesTextEdit>
                    <CellStyle HorizontalAlign="Center">
                    </CellStyle>
                </dx:GridViewDataTextColumn>
                <dx:GridViewDataColumn FieldName="MI_SendUserName" Caption="发送人" VisibleIndex="8"
                    Width="100px" CellStyle-HorizontalAlign="Center" Name="发送人">
                    <CellStyle HorizontalAlign="Center" />
                    <CellStyle HorizontalAlign="Center">
                    </CellStyle>
                </dx:GridViewDataColumn>
                <dx:GridViewDataTextColumn Caption="发送日期" FieldName="MKDate" VisibleIndex="9" Width="130px"
                    Visible="false" Name="发送日期">
                    <PropertiesTextEdit DisplayFormatString="yyyy-MM-dd">
                    </PropertiesTextEdit>
                    <CellStyle HorizontalAlign="Center">
                    </CellStyle>
                </dx:GridViewDataTextColumn>
            </Columns>
            <Settings ShowVerticalScrollBar="True" VerticalScrollableHeight="50" ShowStatusBar="Hidden"
                ShowGroupedColumns="True" GroupFormat="{1}" GridLines="Vertical"></Settings>
            <Paddings Padding="0px"></Paddings>
            <Styles Header-HorizontalAlign="Center" Header-Font-Bold="true">
                <Header HorizontalAlign="Center" Font-Bold="True" VerticalAlign="Middle">
                    <BackgroundImage ImageUrl="~/images/table-header-bg.gif" />
                    <Paddings Padding="3px" />
                    <Border BorderColor="White" BorderStyle="Solid" BorderWidth="1px" />
                    <Paddings Padding="3px"></Paddings>
                    <BackgroundImage ImageUrl="~/images/table-header-bg.gif"></BackgroundImage>
                    <Border BorderColor="White" BorderStyle="Solid" BorderWidth="1px"></Border>
                </Header>
                <Table BackColor="White">
                </Table>
                <GroupRow Font-Bold="True" ForeColor="#333333" HorizontalAlign="Left" VerticalAlign="Middle"
                    Wrap="False">
                </GroupRow>
                <Row BackColor="White" Cursor="pointer">
                </Row>
                <RowHotTrack>
                    <BackgroundImage ImageUrl="~/images/legend-bg.png"></BackgroundImage>
                </RowHotTrack>
                <AlternatingRow BackColor="#EEF5FD" VerticalAlign="Middle">
                </AlternatingRow>
                <SelectedRow BackColor="#8DBCE7">
                </SelectedRow>
                <Cell VerticalAlign="Middle" Wrap="False">
                    <Paddings Padding="3px"></Paddings>
                    <Border BorderColor="White"></Border>
                </Cell>
                <PagerBottomPanel BackColor="White">
                </PagerBottomPanel>
                <CommandColumn>
                    <Paddings Padding="3px"></Paddings>
                    <Border BorderColor="White" BorderStyle="Solid" BorderWidth="1px"></Border>
                </CommandColumn>
                <TitlePanel>
                    <Border BorderStyle="None"></Border>
                    <BorderBottom BorderStyle="Solid"></BorderBottom>
                </TitlePanel>
            </Styles>
            <SettingsBehavior ColumnResizeMode="Control" EnableRowHotTrack="True"></SettingsBehavior>
            <SettingsPager PageSize="30">
                <Summary Text="{0}/{1}页 ({2}项)"></Summary>
            </SettingsPager>
            <Settings ShowStatusBar="Hidden" ShowVerticalScrollBar="true" ShowHorizontalScrollBar="false"
                VerticalScrollableHeight="0" GridLines="Vertical" GroupFormat="{1}" ShowGroupedColumns="True" />
        </dx:ASPxGridView>
    这样就可以了
      

  3.   

    <dx:ASPxGridView ID="grid" SettingsBehavior-ColumnResizeMode="Control" runat="server"
            Width="100%" KeyFieldName="MI_ID" OnCustomCallback="grid_CustomCallback" EnableTheming="True"
            AutoGenerateColumns="False" ClientIDMode="Static">
            <ClientSideEvents EndCallback="function(s,e) {RaiseContentResizedEvent(1);}" RowClick="function(s, e) {if(grid.IsDataRow(e.visibleIndex)){ ShowMessageViewer(s.keys[e.visibleIndex]);}}" />
            <Columns>
                <dx:GridViewCommandColumn ShowSelectCheckbox="True" VisibleIndex="0" Width="30px">
                    <HeaderTemplate>
                        <dx:ASPxCheckBox ID="SelectAllCheckBox" runat="server" ToolTip="全选/全不选" ClientSideEvents-CheckedChanged="function(s, e) { grid.SelectAllRowsOnPage(s.GetChecked()); }" />
                    </HeaderTemplate>
                </dx:GridViewCommandColumn>
                <dx:GridViewDataTextColumn Caption="ID" FieldName="MI_ID" Visible="False" VisibleIndex="1"
                    Width="40px">
                    <CellStyle HorizontalAlign="Center">
                    </CellStyle>
                </dx:GridViewDataTextColumn>
                <dx:GridViewDataDateColumn Caption="阅" VisibleIndex="2" Name="阅" Width="30px">
                    <DataItemTemplate>
                        <asp:Image runat="server" ID="refer" ImageUrl='<%# Eval("imgurl") %>' />
                    </DataItemTemplate>
                </dx:GridViewDataDateColumn>
                <dx:GridViewDataDateColumn Caption="类" VisibleIndex="3" Name="类" Width="30px">
                    <DataItemTemplate>
                        <asp:Image runat="server" ID="image" ImageUrl='<%# ReturnImageUrl( Eval("MI_Type").ToString()) %>' />
                    </DataItemTemplate>
                </dx:GridViewDataDateColumn>
                <dx:GridViewDataDateColumn Caption="附" VisibleIndex="4" Name="附" Width="30px">
                    <DataItemTemplate>
                        <asp:Image runat="server" ID="imag" ImageUrl='<%# ImageReturnurl( Eval("MI_AttachPath").ToString()) %>' />
                    </DataItemTemplate>
                </dx:GridViewDataDateColumn>
                <dx:GridViewDataTextColumn Caption="摘要" FieldName="MI_Subject" VisibleIndex="5" Name="摘要">
                    <CellStyle HorizontalAlign="Left">
                    </CellStyle>
                </dx:GridViewDataTextColumn>
                <dx:GridViewDataTextColumn Caption="阅读时间" FieldName="MR_ReadTime" VisibleIndex="6"
                    Width="130px" Name="阅读时间">
                    <PropertiesTextEdit DisplayFormatString="yyyy-MM-dd hh:mm:ss">
                    </PropertiesTextEdit>
                    <CellStyle HorizontalAlign="Center">
                    </CellStyle>
                </dx:GridViewDataTextColumn>
                <dx:GridViewDataTextColumn Caption="发送时间" FieldName="MI_SendTime" VisibleIndex="7"
                    Width="130px" Name="发送时间">
                    <PropertiesTextEdit DisplayFormatString="yyyy-MM-dd hh:mm:ss">
                    </PropertiesTextEdit>
                    <CellStyle HorizontalAlign="Center">
                    </CellStyle>
                </dx:GridViewDataTextColumn>
                <dx:GridViewDataColumn FieldName="MI_SendUserName" Caption="发送人" VisibleIndex="8"
                    Width="100px" CellStyle-HorizontalAlign="Center" Name="发送人">
                    <CellStyle HorizontalAlign="Center" />
                    <CellStyle HorizontalAlign="Center">
                    </CellStyle>
                </dx:GridViewDataColumn>
                <dx:GridViewDataTextColumn Caption="发送日期" FieldName="MKDate" VisibleIndex="9" Width="130px"
                    Visible="false" Name="发送日期">
                    <PropertiesTextEdit DisplayFormatString="yyyy-MM-dd">
                    </PropertiesTextEdit>
                    <CellStyle HorizontalAlign="Center">
                    </CellStyle>
                </dx:GridViewDataTextColumn>
            </Columns>
            <Settings ShowVerticalScrollBar="True" VerticalScrollableHeight="50" ShowStatusBar="Hidden"
                ShowGroupedColumns="True" GroupFormat="{1}" GridLines="Vertical"></Settings>
            <Paddings Padding="0px"></Paddings>
            <Styles Header-HorizontalAlign="Center" Header-Font-Bold="true">
                <Header HorizontalAlign="Center" Font-Bold="True" VerticalAlign="Middle">
                    <BackgroundImage ImageUrl="~/images/table-header-bg.gif" />
                    <Paddings Padding="3px" />
                    <Border BorderColor="White" BorderStyle="Solid" BorderWidth="1px" />
                    <Paddings Padding="3px"></Paddings>
                    <BackgroundImage ImageUrl="~/images/table-header-bg.gif"></BackgroundImage>
                    <Border BorderColor="White" BorderStyle="Solid" BorderWidth="1px"></Border>
                </Header>
                <Table BackColor="White">
                </Table>
                <GroupRow Font-Bold="True" ForeColor="#333333" HorizontalAlign="Left" VerticalAlign="Middle"
                    Wrap="False">
                </GroupRow>
                <Row BackColor="White" Cursor="pointer">
                </Row>
                <RowHotTrack>
                    <BackgroundImage ImageUrl="~/images/legend-bg.png"></BackgroundImage>
                </RowHotTrack>
                <AlternatingRow BackColor="#EEF5FD" VerticalAlign="Middle">
                </AlternatingRow>
                <SelectedRow BackColor="#8DBCE7">
                </SelectedRow>
                <Cell VerticalAlign="Middle" Wrap="False">
                    <Paddings Padding="3px"></Paddings>
                    <Border BorderColor="White"></Border>
                </Cell>
                <PagerBottomPanel BackColor="White">
                </PagerBottomPanel>
                <CommandColumn>
                    <Paddings Padding="3px"></Paddings>
                    <Border BorderColor="White" BorderStyle="Solid" BorderWidth="1px"></Border>
                </CommandColumn>
                <TitlePanel>
                    <Border BorderStyle="None"></Border>
                    <BorderBottom BorderStyle="Solid"></BorderBottom>
                </TitlePanel>
            </Styles>
            <SettingsBehavior ColumnResizeMode="Control" EnableRowHotTrack="True"></SettingsBehavior>
            <SettingsPager PageSize="30">
                <Summary Text="{0}/{1}页 ({2}项)"></Summary>
            </SettingsPager>
            <Settings ShowStatusBar="Hidden" ShowVerticalScrollBar="true" ShowHorizontalScrollBar="false"
                VerticalScrollableHeight="0" GridLines="Vertical" GroupFormat="{1}" ShowGroupedColumns="True" />
        </dx:ASPxGridView>