for single field, try<asp:HyperLinkColumn  Target="_blank" DataTextField="CountryName" HeaderText="我的姓名" FooterText="没得说" DataNavigateUrlFormatString="ReadImage.aspx?id={0}"
DataNavigateUrlField="id">
</asp:HyperLinkColumn>for multiple fields, use asp:TemplateColumn/ItemTemplate/HyperLink

解决方案 »

  1.   

    use asp:TemplateColumn/ItemTemplate/HyperLink举个具体的实例
    我想连ReadImage.aspx?id= &Name=
    怎么连
      

  2.   

    思归大哥的解法应该没有问题!不过我一般采用属性设置,这样更加直观啊,道理和思归的一样!
    你可以在datagrid的属性生成器中查看链接字段,其中有一个选择项目就是设置参数的,但是只能设置一个参数,格式符就是{0}
      

  3.   

    <Columns>
      <asp:TemplateColumn>
            <ItemTemplate>
              <asp:HyperLink runat="server" NavigateUrl='<%# String.Format("ReadImage.aspx?id={0}&Name={1}", DataBinder.Eval(Container.DataItem, "Id"), DataBinder.Eval(Container.DataItem, "Name")) %>' ......... />                </ItemTemplate>
        </asp:TemplateColumn>
    </Columns>
      

  4.   

    <asp:Image id=Image1 Runat="server" Width="150" NavigateUrl='<%# FormatURL(DataBinder.Eval(Container.DataItem, "Id")) %>'   ImageUrl='<%# "ReadImage.aspx?id=" + DataBinder.Eval(Container.DataItem, "Id") %>' Height="125">纳闷
     ImageUrl='ReadImage.aspx?id=<%# DataBinder.Eval(Container.DataItem, "Id") %>'
    这样不行 要把ReadImage.aspx?id=放在<%# %>里才可显示图片我想点击图片 连接到ReadImage.aspx NavigateUrl这个没用 怎么办
      

  5.   

    代码I:
    <asp:BoundColumn DataField="CountryName" HeaderText="名称"></asp:BoundColumn>

    代码II:
    <asp:TemplateColumn HeaderText="姓名">
    <ItemTemplate>
    <asp:Label id=Label1 Runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "CountryName") %>'>
    </asp:Label>
    </ItemTemplate>
    </asp:TemplateColumn>
    得到的效果是一样的 为什么我看的示例都是用代码II
    为什么?!
    这两段代码有什么不同之处?
      

  6.   

    text="<%# DataBinder.Eval(Container.DataItem, 'Id') %>" 好象不行的
    text='<%# DataBinder.Eval(Container.DataItem, "Id") %>' 你试试