怎样在 DataGrid 里给 NavigateUrl 付值?问题如下---<asp:DataGrid ID="dgNews" Runat="server" CellPadding="5" AutoGenerateColumns="false" OnEditCommand ="EditRecord" OnCancelCommand ="CancelEdit" OnUpdateCommand ="UpdateRecord" OnDeleteCommand ="DeleteRecord" Width="85%">
      <Columns>
<asp:BoundColumn DataField="NewsID" ReadOnly="True" Visible="False" />
<asp:BoundColumn DataField="Title" HeaderText="新闻标题" HeaderStyle-Font-Bold=True />
<asp:BoundColumn DataField="DatTime" HeaderText="发布时间" ReadOnly =True  HeaderStyle-Font-Bold=True />
<asp:EditCommandColumn ButtonType="LinkButton" UpdateText="保存" CancelText="取消" EditText="编辑"  />
<asp:ButtonColumn ButtonType ="LinkButton" CommandName = "delete" Text ="删除" /><!--
/* 我想在下面把NewsID的值付上去 EditNews.aspx?NewsID=  ,
/* 然后连接到更新页面,接收NewsID值,进行编辑内容和其他信息  
-->
<asp:HyperLinkColumn NavigateUrl="EditNews.aspx?NewsID=" Text ="更新"/>
<!--
/*
/*
-->      </Columns>
</asp:DataGrid>谢谢!

解决方案 »

  1.   

    <asp:LinkButton id=LinkButton1 runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.字段名") %>' CommandName="select" CausesValidation="False"'>参考一下
      

  2.   

    如果不用模板列的话带参数链接应为NavigateUrl="EditNews.aspx?NewsID={0}",有点忘了。你可以用DataGrid的属性生成器中试改一下。
      

  3.   

    http://community.csdn.net/Expert/topic/3700/3700822.xml?temp=.3501703
      

  4.   

    做一个隐藏的列来放你的ID
    或则DataGrid.KeyField = "ID";
    用来值用.
      

  5.   

    1、如果你传一个参数用DataGrid的属性生成器就可以搞定。
    URL字段:
    id
    URL格式字符串:
    company.aspx?id={0}
    2、如果你传多个参数,就需要用模板列。
    <ItemTemplate>
    <asp:HyperLink id=HyperLink1 runat="server" Target="_blank" NavigateUrl='<%#"client/Product01.aspx?id="+DataBinder.Eval(Container, "DataItem.id")+"&proid="+DataBinder.Eval(Container, "DataItem.id1") %>' Text='<%# DataBinder.Eval(Container, "DataItem.company") %>'>
    </asp:HyperLink>
    </ItemTemplate>
      

  6.   

    <asp:HyperLinkColumn NavigateUrl="EditNews.aspx?NewsID={0}" Text ="更新"/>
    不可以阿怎么回事?
      

  7.   

    <asp:HyperLink ID="HyperLink1" Runat="server" NavigateUrl='<%# DataBinder.Eval(Container.DataItem,"类别ID","show_list.aspx?id=/{0}/")%>'><%# DataBinder.Eval(Container.DataItem,"类别名称") %></asp:HyperLink>
    记得给分!!呵呵
      

  8.   

    其中那两个斜杠可以不要,我的是guid!
      

  9.   

    aspx文件
    <a href='<%#getURL((string)DataBinder.Eval(Container.DataItem,"NewsID"))%>'>更新</a>cs文件
    protected string getURL(string NewsID)
    {
    return "EditNews.aspx?NewsID="+NewsID;
    }
      

  10.   

    <asp:HyperLinkColumn DataNavigateUrlFormatString="AddNews.aspx?NewsID={0}" DataNavigateUrlField="NewsID"  Text ="更新" />这样就可以了。。
    谢谢各位提供不同的答案鄙人受益匪浅!!
    给分!
      

  11.   

    <asp:hyperlink NavigateURL='<%# EditNews.aspx?NewsID=" + DataBinder.Eval( Container.DataItem, "NewsID" )%>' Text='<%# DataBinder.Eval( Container.DataItem, "XXX" )%>' runat="server"/>