[英]Convert string to DateTime in DataGridView
I have data that on the server is in the form of a smalldatetime
but when I return this data to my application it gets returned to me as a string
.我有服务器上的数据是
smalldatetime
的形式,但是当我将此数据返回到我的应用程序时,它会作为string
返回给我。 This happens for a variety of reasons that don't apply to this question.发生这种情况的原因有多种,不适用于此问题。
What I am trying to do is when this data gets populated in my DataGridView I need to format it as a datetime
with just the date no time in the format ' mm/dd/yyyy
'.当这个数据在我的DataGridView我需要格式化为一个被填充我所试图做的是
datetime
只有日期格式“没时间mm/dd/yyyy
”。 I have tried the following but the data remains in the format of ' mm/dd/yyyy hh:mm
':我尝试了以下操作,但数据仍为“
mm/dd/yyyy hh:mm
”格式:
this.DataGridView.Columns[7].DefaultCellStyle.Format = "d";
How can I format this column of data?如何格式化此列数据?
Use Column.DefaultCellStyle.Format property or set it in designer使用Column.DefaultCellStyle.Format属性或在设计器中设置它
or要么
dataGridView1.Columns[0].DefaultCellStyle.Format = "MM'/'dd'/'yyyy";
or要么
You can set the format you want:你可以设置你想要的格式:
dataGridViewCellStyle.Format = "MM/dd/yyyy";
this.date.DefaultCellStyle = dataGridViewCellStyle;
// date being a System.Windows.Forms.DataGridViewTextBoxColumn
you can do like this....你可以这样做......
private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
// If the column is the Artist column, check the
// value.
if (this.dataGridView1.Columns[e.ColumnIndex].Name == "Artist")
{
if (e.Value != null)
{
// Check for the string "pink" in the cell.
string stringValue = (string)e.Value;
stringValue = stringValue.ToLower();
if ((stringValue.IndexOf("pink") > -1))
{
e.CellStyle.BackColor = Color.Pink;
}
}
}
else if (this.dataGridView1.Columns[e.ColumnIndex].Name == "Release Date")
{
ShortFormDateFormat(e);
}
}
//Even though the date internaly stores the year as YYYY, using formatting, the
//UI can have the format in YY.
private static void ShortFormDateFormat(DataGridViewCellFormattingEventArgs formatting)
{
if (formatting.Value != null)
{
try
{
System.Text.StringBuilder dateString = new System.Text.StringBuilder();
DateTime theDate = DateTime.Parse(formatting.Value.ToString());
dateString.Append(theDate.Month);
dateString.Append("/");
dateString.Append(theDate.Day);
dateString.Append("/");
dateString.Append(theDate.Year.ToString().Substring(2));
formatting.Value = dateString.ToString();
formatting.FormattingApplied = true;
}
catch (FormatException)
{
// Set to false in case there are other handlers interested trying to
// format this DataGridViewCellFormattingEventArgs instance.
formatting.FormattingApplied = false;
}
}
}
would you pls go through this link for more info你能通过这个链接了解更多信息吗
For C++/CLI:对于 C++/CLI:
Exemple: 12.12.20 12:13:01
例如:12.12.20 12:13:01
System::String^ format = "dd.MM.yyyy HH:mm::ss";
dataGridView_Archive->Columns[1]->DefaultCellStyle->Format = format;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.