私はC#で次のSQLコードを移入私のWinFormsアプリケーションのリストボックスを持っています数値のclientID。リストボックス選択した値の問題
しかし、後のコードで -
private void btnAddNewJob_Click(object sender, EventArgs e)
{
try
{
string strNewJobName = txtNewJobName.Text;
string strNewJobRef = txtNewJobRef.Text;
int intNewJobClient = (int)lbxClient.SelectedValue;
string sqlText = "INSERT INTO tblJobs (JobID, JobClient, JobRef, JobName) " +
"VALUES (@JobID, @JobClient, @JobRef, @JobName);";
SqlCommand sqlCom = new SqlCommand(sqlText);
sqlCom.Parameters.Add("@JobID", SqlDbType.Int);
sqlCom.Parameters.Add("@JobClient", SqlDbType.Int);
sqlCom.Parameters.Add("@JobRef", SqlDbType.Text);
sqlCom.Parameters.Add("@JobName", SqlDbType.Text);
cConnectionString cS = new cConnectionString();
sqlCom.Parameters["@JobID"].Value = cS.NextID("JobID", "tblJobs");
sqlCom.Parameters["@JobClient"].Value = intNewJobClient;
sqlCom.Parameters["@JobRef"].Value = strNewJobRef;
sqlCom.Parameters["@JobName"].Value = strNewJobName;
cSqlQuery cQ = new cSqlQuery(sqlCom, "non query");
PopulateJobs();
txtNewJobName.Text = "";
txtNewJobRef.Text = "";
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
無効キャストで第三のライン
int intNewJobClient = (int)lbxClient.SelectedValue;
に失敗。私が見る限り、リストボックスはクライアント名を返していますが、クライアントID(int)を返しているはずです。
アイデア?
おそらくあなたが指定した行で、 'SelectedValue'プロパティはnullを返します。 – VS1