gpt4 book ai didi

c# - 在 DataGridView 中将字符串转换为 DateTime

转载 作者:行者123 更新时间:2023-11-30 22:34:21 24 4
gpt4 key购买 nike

我的数据在服务器上以 smalldatetime 的形式存在,但是当我将此数据返回到我的应用程序时,它会以 string 的形式返回给我。发生这种情况的原因多种多样,但不适用于此问题。

我想做的是,当这些数据填充到我的 DataGridView 中时,我需要将其格式化为 datetime,只有日期没有时间,格式为 'mm/dd/yyyy'。我已尝试以下操作,但数据仍采用 'mm/dd/yyyy hh:mm' 格式:

this.DataGridView.Columns[7].DefaultCellStyle.Format = "d";

如何格式化这列数据?

最佳答案

使用Column.DefaultCellStyle.Format属性或设置它 in designer

dataGridView1.Columns[0].DefaultCellStyle.Format = "MM'/'dd'/'yyyy";

你可以设置你想要的格式:

dataGridViewCellStyle.Format = "MM/dd/yyyy";
this.date.DefaultCellStyle = dataGridViewCellStyle;
// date being a System.Windows.Forms.DataGridViewTextBoxColumn

你可以这样做......

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;
}
}
}

请您通过此链接获取 more info

关于c# - 在 DataGridView 中将字符串转换为 DateTime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7881085/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com