dataGridView显示2016-09-01而不是2016-09-01 00:00

时间:2016-09-01 11:50:59

标签: c# datetime datagridview

我有问题。如果时间是午夜,DataGridView仅显示日期。首先我认为这是因为我的LINQ查询是dataGridView的数据源。我无法更改查询,因此我决定从代码中添加零。这是我的代码:

            for (int i = 0; i < dataGridViewRaporty.Rows.GetRowCount(DataGridViewElementStates.Visible); i++)
            {
                for (int j = 0; j < dataGridViewRaporty.Columns.GetColumnCount(DataGridViewElementStates.Visible); j++)
                {
                    string wartoscKomorki = dataGridViewRaporty.Rows[i].Cells[j].Value.ToString();
                    if (wartoscKomorki.Contains("-") && wartoscKomorki.Length == 10){
                        wartoscKomorki = wartoscKomorki + " 00:00";
                        dataGridViewRaporty.Rows[i].Cells[j].Value = wartoscKomorki.ToString(); 
                    }
                }
            }

我很惊讶,因为没有添加零。然后我在MessageBoxes中显示了这些值,并在那里出现了零。结论是dataGridView已经使用零获得了这些值,但没有显示它们。是否有任何解决方案显示完整的DateTime格式?

1 个答案:

答案 0 :(得分:0)

正如我所说的那样是因为dataGridView的行为。这是解决方案:

dataGridViewRaporty.Columns[3].DefaultCellStyle.Format= "yyyy-MM-dd HH:mm";