2
我正在使用以下代碼來檢查以前添加到複選框列表中的數據庫表中的值,但在此處得到'未設置爲對象實例的對象引用'錯誤:未將對象引用設置爲對象的實例
ListItem currentCheckBox = chkbx.Items.FindByValue(rdr["MemberID"].ToString());
這是代碼,感謝您的幫助!
SqlDataReader rdr = null;
SqlConnection conn = new SqlConnection(GetConnectionString());
SqlCommand cmd5 = new SqlCommand("SELECT MemberID FROM ProjectIterationMember WHERE ProjectIterationID IN (SELECT ProjectIterationID FROM Iterations WHERE ProjectID = '" + proj_id + "')", conn);
try
{
conn.Open();
rdr = cmd5.ExecuteReader();
CheckBoxList chkbx = (CheckBoxList)FindControl("project_members");
while (rdr.Read())
{
ListItem currentCheckBox = chkbx.Items.FindByValue(rdr["MemberID"].ToString());
if (currentCheckBox != null)
{
currentCheckBox.Selected = true;
}
}
}
finally
{
if (rdr != null)
{
rdr.Close();
}
if (conn != null)
{
conn.Close();
}
}
Verfy那(CheckBoxList的)的FindControl( 「project_members」)發現你的控制。而且rdr [「MemberID」]不能從數據庫返回空值。 – 2011-02-13 17:11:20
非常感謝lazyberezivsky - 我在手風琴上有了自己的checkboxlist ...現在就開始工作了。 – MiziaQ 2011-02-13 17:27:39
這些問題是練習排除故障的好地方! (即調試器,更緊密的堆棧跟蹤分析和推理,本地測試,分而治之/日誌記錄等) – 2011-02-13 19:17:49