日期:2014-05-18  浏览次数:20451 次

如何根据列名获取数据
一段代码:
    protected   void   gv_SignInf_RowDataBound(object   sender,   GridViewRowEventArgs   e)
                {
                        if   (e.Row.RowType   ==   DataControlRowType.DataRow)
                        {
                            //     InfData   drv   =   (InfData)e.Row.DataItem;

                                DataRow   dr=((System.Data.DataRowView)e.Row.DataItem).Row;
                                                                hy_title.ToolTip   =   Regex.Replace(dr.ItemArray[1].ToString(),   @ " <[\s\S]*?> (?![^ <> ]*?> ) ",   " ")   +
                                        "[ "   +   Convert.ToDateTime(dr.ItemArray[3].ToString())   +   "]   "   +   dr.ItemArray[12].ToString()   +   "次 ";
                                hy_title.NavigateUrl   =   "/SourVer.Web/Web.Module/Inf/ShowInf.aspx?ID= "   +   dr.ItemArray[0].ToString()
                                + "&typeID= "   +   dr.ItemArray[23].ToString()+ "2 ";
                                                }

其中dr.ItemArray[23].ToString()这个不方便,
能不能使用列用来获取数据,如ItemArray[ "Title "]格式的.

------解决方案--------------------
就是dr.ItemArray[ "Title "].ToString()这样子的写法,没有办法将string转换成int类型,就在Convert.Toint32(dr.ItemArray[ "Title "].ToString())这样子转换一下。