for(int i = 0 ; i < DataGrid1.Items.Count ; i ++)
{
LinkButton tempbutton = (LinkButton)DataGrid1.Items[i].FindControl("cmd_Detail");
tempbutton.Attributes.Add("onclick","window.showModalDialog('dingdaninfo.aspx?actionid = "+Convert.ToInt32(DataGrid1.Items[i].Cells[0].Text)+"',null,'dialogHeight: 400px; dialogWidth: 650px; center: Yes; help: no; resizable: no; status: no;scroll:no;');");
}Convert.ToInt32(DataGrid1.Items[i].Cells[0].Text)我用快速监视,发现text值,超出了范围,请各位高手帮帮忙啊?

解决方案 »

  1.   

    if (e.Item.ItemType==ListItemType.Item||e.Item.ItemType==ListItemType.AlternatingItem)
    {
    string script="javascript:return ShowModalWindow('"+EditUrl+"?id="+strKeyValue+"',"+DialogWidth+","+DialogHeight+");";
    (e.Item.Cells[Col_Edit].Controls[0] as LinkButton).Attributes.Add("onclick",script);
    }
      

  2.   

    为什么要转啊??直接
    Convert.ToInt32(DataGrid1.Items[i].Cells[0].Text)
    =》DataGrid1.Items[i].Cells[0].Text
    不就行了,再转int32不是多此一举吗?