我有一個帶有DateTimePicker控件的WinForm,它顯示了我的SQL數據庫中的特定日期。C#DateTimePicker
當用戶點擊它時,我有一個自定義表單打開,詢問他們是否確定要更改日期。
如果他們點擊確定,他們可以繼續使用DateTimePicker更改日期,並將更改發佈回我的SQL Server數據庫。
如果用戶單擊取消而不是,方法退出,因此沒有更改保存到數據庫。
然而,什麼令我討厭,甚至當用戶點擊取消時,DateTimePicker下拉日曆保持打開狀態,用戶可能會解釋爲操作失敗取消。我怎樣才能讓DateTimePicker關閉一個打開的下拉日曆?
private void datDOA_ValueChanged(object sender, EventArgs e)
{
frmConfirmBox frmCB = new frmConfirmBox("Are you sure you want to change the Date of Accident?");
frmCB.ShowDialog();
if (frmCB.intButton == 0)
{
return;
}
datDOA.Format = DateTimePickerFormat.Long;
//...Connect to Database...//
string strCaseNo = txtCaseNo.Text;
string strConnect = BuildConnectionString();
SqlConnection linkToDB = new SqlConnection(strConnect);
linkToDB.Open();
//...Send User Input to Database...//
DateTime dateNewDate = datDOA.Value;
string commandText = "UPDATE tblCases SET DOA = @DOAVal WHERE CaseNo = @CaseNoVal;";
SqlCommand sqlCom = new SqlCommand(commandText, linkToDB);
sqlCom.Parameters.Add("@DOAVal", SqlDbType.DateTime);
sqlCom.Parameters.Add("@CaseNoVal", SqlDbType.VarChar);
sqlCom.Parameters["@DOAVal"].Value = dateNewDate;
sqlCom.Parameters["@CaseNoVal"].Value = strCaseNo;
sqlCom.ExecuteNonQuery();
linkToDB.Close();
}
把你的代碼在這裏檢查什麼事。 – 2012-01-12 17:45:21
DateTimePicket.Visible = false; – Lloyd 2012-01-12 17:45:22
當控件失去焦點時,下拉通常會關閉。你如何保持開放? – LarsTech 2012-01-12 17:48:34