目前DataGrid显示了项目列表,其中有一列加入了员工名称,想将员工名称做成超级连接,点击的时候会弹出相关员工数据。并不是选中某条记录。
比较有挑战性啊,呵呵

解决方案 »

  1.   

    用按钮列就行了
    private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
    {
             if(e.Item.ItemType!=ListItemType.Header)
    e.Item.Cells[6].Attributes.Add("onclick","javascript:window.showModalDialog('ProductEdit.aspx?Id="+e.Item.Cells[0].Text+"','','dialogHeight:350px;dialogWidth:510px')");
    }
      

  2.   

    最好的方法,是直接在SQL语句里面,把需要的链接列写好,然后绑定就可以了.
    以下是ORACLE里面的常用写法.
    sql = "select '<a href=xxx.aspx?id='||a.id||' target=_blank>'||a.title||'</a>' from table1 a ";
    如此,在控件里面不需要进行任何操作,显示出来就是一个链接.
      

  3.   

    在属性生成器中添加了一个超级连接列之后,下面会有要求输入的框
    文本字段:是你要在DATAGRID中显示的数据(也就是表中的字段)
    旁边的URL字段:是你要传递的参数,一般为ID
    下面的URL格式字符串:是你要传递的页面,如:ShowData.aspx?ID={0}
    {0}表示你点击的那行所对应的编号,即上面的ID,这样就可以把对应的编号ID
    传入到你所要的页面了,然后在页面中根据编号得数据库的该用户的值了
      

  4.   

    你在DataGrid中间加入
    <Columns>
    <asp:HyperLinkColumn DataNavigateUrlField="员工" HeaderStyle-HorizontalAlign="Center" DataNavigateUrlFormatString="ApprovedLogoPart.aspx? 员工={0}" DataTextField="员工" HeaderText="员工">
    <Columns>
      

  5.   

    <Columns>
    <asp:HyperLinkColumn DataNavigateUrlField="员工" HeaderStyle-HorizontalAlign="Center" DataNavigateUrlFormatString="ApprovedLogoPart.aspx? 员工={0}" DataTextField="员工" HeaderText="员工">
    <Columns>
      

  6.   

    同意hchxxzx(NET?摸到一点门槛)
      

  7.   

    加超级连接列
    <Columns>
    <asp:HyperLinkColumn DataNavigateUrlField="员工" HeaderStyle-HorizontalAlign="Center" DataNavigateUrlFormatString="ApprovedLogoPart.aspx? 员工={0}" DataTextField="员工" HeaderText="员工">
    <Columns>
      

  8.   

    hchxxzx(NET?摸到一点门槛)同解