我收到此错误* System.FormatException:'该字符串未被识别为有效的DateTime。从索引0开始有一个未知词。'
if (dtgMember.Columns[e.ColumnIndex].Name == "Edit")
{
DialogResult result = MessageBox.Show("Do you wish to update this record?", "Messsage", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
if (result == DialogResult.Yes)
{
ADD_MEMBER am = new ADD_MEMBER();
am.btnAdd.Text = "Update";
am.txtMemberId.Text = this.dtgMember.CurrentRow.Cells[2].Value.ToString();
conn.Open();
SqlCommand cmd1 = new SqlCommand();
cmd1.CommandText = "Select Description FROM ReaderType";
cmd1.Connection = conn;
SqlDataReader reader = cmd1.ExecuteReader();
while (reader.Read())
{
am.cmbReaderType.Items.Add(reader["Description"]);
}
reader.Close();
conn.Close();
am.cmbReaderType.SelectedIndex = am.cmbReaderType.FindString(this.dtgMember.CurrentRow.Cells[3].Value.ToString());
am.txtFirstname.Text = this.dtgMember.CurrentRow.Cells[4].Value.ToString();
am.cmbGender.Text = this.dtgMember.CurrentRow.Cells[5].Value.ToString();
am.txtContactNo.Text = this.dtgMember.CurrentRow.Cells[6].Value.ToString();
am.dtpMemberDate.Value = Convert.ToDateTime(this.dtgMember.CurrentRow.Cells[7].ValueType.ToString());
am.ShowDialog();
GetListMember();
}
else if (result == DialogResult.No)
{
return;
}
}
就在描述中。值:
this.dtgMember.CurrentRow.Cells[7].ValueType.ToString()
不是可以转换为日期时间的字符串值。
尝试
if(DateTime.TryParse(this.dtgMember.CurrentRow.Cells[7].ValueType.ToString(), out DateTime dateTime))
{
am.dtpMemberDate.Value = dateTime;
}
如果没有为您提供所需的结果。仔细查看那里实际存储的内容,也许字符串不是DateTime对象知道如何转换为datetime对象的格式,并且您需要探索如何为DateTime转换器提供格式?