123.aspx?sID={0}&Card={0}
怎么能写两个{0}呢至少要写成123.aspx?sID={0}&Card={1}但是在这里只能传一个字段的。你可以将此列转为模板列,再行操作就可以了。可是只传一个参数,在 123.aspx中,再从数据库中读取详细也可以的。

解决方案 »

  1.   

    在MSDN里面这样说的
    将信息传递给目标页
    可以使用“URL 字段”将数据传递给目标页。 
    为“URL 字段”框输入值以指定要传递的数据字段,并且在“URL 格式字符串”中为包括目标页的 URL 定义格式。例如,若要将数据源中 LastName 字段的值传递给有关津贴的页,则“URL 字段”应设置为 LastName,“URL 格式字符串”应设置为 Benefits.aspx?LastName={0}。 
    如果以这种方式在“URL 字段”框中提供信息,则该信息将作为查询字符串传递给目标页。在目标页中,可以通过检查 QueryString 参数的内容获取从超级链接传来的值。在 Web 窗体页中,可以在 Page_Load 事件中实现此功能。下面的示例显示可如何检索传递给目标页的值。 
    // C#
    private void Page_Load(object sender, System.EventArgs e)
    {
       // Add code here to initialize the page.
       string lastName = Request.QueryString["LastName"];
       // Add code here to process LastName.
    }现在我是想传两个参数,如何做阿,怎转成摸板列??救命..
      

  2.   

    don't use HyperLinkColumn, use<asp:TemplateColumn>
     <ItemTemplate>
    <asp:HyperLink runat="server" NavigateUrl='<%# "123.aspx?sID=" + DataBinder.Eval(Container.DataItem,"ID").ToString() + "&CardID=" + DataBinder.Eval(Container.DataItem,"CardID").ToString()%>' Text='<%# DataBinder.Eval(Container.DataItem,"Name")%>' />
     </ItemTemplate>
    </asp:TemplateColumn>
      

  3.   

    saucer  的说法是不是还是要先把它转化为模板列以后然后在aspx中写你所说的代码呢?
      

  4.   

    在datagrid的右键。。属性生成器菜单,,,再选那一列,左下方有一个按钮,转成模板列之后,点确定,回到datagrid ,再点设计模板就可以了。此处的设计模板与datalist是一样的。不知道,你用是不是在.net开发环境下开发的。
      

  5.   

    我是在.net下开发的, erist() 可不可以说详细点.就是如何编辑那个模板