Ich weiß, das ist ein altes Problem, aber ich kann nicht herausfinden, warum.Format DateTime in DataGridView
Ich habe 2 Hohlräume Bindung in 2 Tasten GENE und SAVE-:
private void btn_generate_Click(object sender, EventArgs e)
{
DateTime startdate = Convert.ToDateTime(textstarteddate.Text);
DateTime enddate = new DateTime (startdate.Year, 12, 31);
Int64 addedDays = Convert.ToInt64(textdaycount.Text);
string taskID = texttaskID.Text;
string machine = cb_machineID.Text.Trim();
string note = texttasknote.Text;
string runningtime = RMT.Text;
string period = cb_periodID.Text.Trim();
_dtdate.Columns.Add(new DataColumn("Maintenance Date", typeof(DateTime)));
_dtdate.Columns.Add(new DataColumn("TaskID", typeof(String)));
_dtdate.Columns.Add(new DataColumn("Machine", typeof(String)));
_dtdate.Columns.Add(new DataColumn("Note", typeof(String)));
_dtdate.Columns.Add(new DataColumn("Period", typeof(String)));
_dtdate.Columns.Add(new DataColumn("Running Time", typeof(String)));
_dtdate.Rows.Clear();
G1.DataBindings.Clear();
if (cb_typescheID.Text == "Fix Date")
{
do
{
_dtdate.Rows.Add(startdate.Date, taskID, machine, note, period);
startdate = startdate.AddDays(addedDays);
G1.Refresh();
//DateTime end = startdate;
}
while (startdate <= enddate);
}
G1.DataSource = _dtdate;
G1.Columns["Maintenance Date"].DefaultCellStyle.Format = "d";
}
und
private void btn_save_Click(object sender, EventArgs e)
{
if (cb_typescheID.Text == "Fix Date")
{
foreach (DataRow dr in _dtdate.Rows)
{
sqlstr = sqlstr + " INSERT INTO [PerformTask] (Year, Date, TasKID, MachineID, PerformStatus, ScheduleID, PeriodID) Values ('" + startdate.Year + "', '" + dr["Maintenance Date"].ToString() + "',";
sqlstr = sqlstr + "'" + texttaskID.Text.Trim() + "', '" + machine + "', 'RS_Open', '" + typeschedule + "', '" + period + "')";
G1.Columns["Maintenance Date"].DefaultCellStyle.Format = "d";
}
}
}
versuchte ich jeden Weg, um es nur Datum zu konvertieren (TT/MM/yyyy) aber es wird immer noch auf einem DataGridView (G1) angezeigt, aber wenn ich versuche, es in meine Datentabelle in SQL zu speichern, ist sein Format immer noch "TT/MM/JJJJ hh: mm: ss tt" egal wie ich es umwandle. Ich habe zu einem alten Thema über dieses Problem gelesen, habe versucht, ihre Möglichkeiten, aber immer noch nicht die Daten so speichern, wie ich will.
Bitte helfen. Vielen Dank.
danke, es funktionierte, nur Zusatzinfo, anstelle von 'startdate.Date.ToString (" TT/MM/JJJJ ")', könnten Sie 'startdate.Date.ToShortDateString()' verwenden. – Serenade
Schön. Bitte als richtige Antwort markieren. Tschüss –