-)DataGrid代码
<asp:DataGrid id="dgmyproject" runat="server" Width="100%" AutoGenerateColumns="False" >
<AlternatingItemStyle CssClass="gridalteritem" BackColor="#CD9BFF"></AlternatingItemStyle>
                          <ItemStyle CssClass="griditem" BackColor="#EEEEEE"></ItemStyle>
                          <HeaderStyle CssClass="headcenter" BackColor="#C389EE"></HeaderStyle>
<Columns>
<asp:BoundColumn DataField="pkid"  HeaderText="ID序号"></asp:BoundColumn>
<asp:BoundColumn DataField="clientname" ReadOnly="True" HeaderText="客户名称"></asp:BoundColumn>
<asp:BoundColumn DataField="qiantime" HeaderText="签定时间"></asp:BoundColumn>
<asp:BoundColumn DataField="servicepermonth" HeaderText="次/月"></asp:BoundColumn>
<asp:TemplateColumn HeaderText="初始化">
<ItemTemplate>
<a href='viewcs.aspx?khid=<%#DataBinder.Eval(Container.DataItem,"pkid")%>' title="查看初始化"><IMG src='../images/<%#DataBinder.Eval(Container.DataItem,"csimg")%>'border=0></a>&nbsp; <A onclick="javascript:window.open('addcshi.aspx?khid=<%#DataBinder.Eval(Container.DataItem,"pkid")%>',null, 'height=250, width=450')" href="#">
设置</A>
</ItemTemplate>
</asp:TemplateColumn>
<asp:BoundColumn DataField="nextday" ReadOnly="True" HeaderText="下一巡检日" DataFormatString={0:d}></asp:BoundColumn>
<asp:TemplateColumn HeaderText="当期月巡检">
<ItemTemplate>

<img src='../images/<%#GetprojectsByID(DataBinder.Eval(Container.DataItem,"pkid").ToString())%>'>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="月巡检设置">
<ItemTemplate>
 <A onclick="javascript:window.open('setmonthsp.aspx?khid=<%#DataBinder.Eval(Container.DataItem,"pkid")%>',null, 'height=250, width=450')" href="#">
添加月巡检</A>

</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
二)后台方法
public String GetprojectsByID(string strmyID)
{
  cn=new SqlConnection(ConfigurationSettings.AppSettings["DSN"]);
          SqlCommand cm= new SqlCommand("getproject",cn);
  cm.CommandType=CommandType.StoredProcedure;   SqlParameter paraID= new SqlParameter("@Newkhid",SqlDbType.Int,4);
  paraID.Value=Convert.ToInt16(strmyID);   cm.Parameters.Add(paraID);
  cn.Open();
  mystring=(cm.ExecuteScalar()).ToString();
cn.Close();
  return mystring;
  
}
三)错误提示
未将对象引用设置到对象的实例。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。源错误: 
行 41:  <ItemTemplate>
行 42: 
行 43:  <img src='../images/<%#GetprojectsByID(DataBinder.Eval(Container.DataItem,"pkid").ToString())%>'>
行 44: 
行 45:  </ItemTemplate>
 四)我将上面代码中
<img src='../images/<%#GetprojectsByID(DataBinder.Eval(Container.DataItem,"pkid").ToString())%>'> 改成为 <img src='../images/<%#GetprojectsByID(8.ToString())%>'> 即可正常显示. 提示:
     8是取得的具体pkID,(pkid是肯定可以取到的,因为我将GetprojectsByID方法去掉,其pkid可正常显示)