DataGridView列不显示相同的格式化日期C#
我正在从SQLServer查询数据,并在ManagementStudio中得到以下结果 现在,当我在一个DataGridView列不显示相同的格式化日期C#,c#,winforms,datagridview,C#,Winforms,Datagridview,我正在从SQLServer查询数据,并在ManagementStudio中得到以下结果 现在,当我在一个DataTable中获得相同的结果,并将该DataTable指定为DataGridView的DataSource时,我得到了下面的视图 上次更新于显示正确的SQL格式,但于启动,显示不同的格式 从SQL检索数据的方法: internal DataTable GetDGVData() { try { using (SqlConn
DataTable
中获得相同的结果,并将该DataTable
指定为DataGridView
的DataSource
时,我得到了下面的视图
上次更新于
显示正确的SQL格式,但于
启动,显示不同的格式
从SQL检索数据的方法:
internal DataTable GetDGVData()
{
try
{
using (SqlConnection connection = new SqlConnection(_conStr))
{
var cmd = new SqlCommand("GetDGVData_SP", connection);
cmd.CommandType = CommandType.StoredProcedure;
connection.Open();
var dr = cmd.ExecuteReader();
var dt = new DataTable();
dt.Load(dr);
connection.Close();
return dt;
}
}
catch (Exception exception)
{
MessageBox.Show(exception.Message);
return null;
}
}
数据源分配代码:
var data = _dbOprations.GetDGVData();
if (data != null)
{
//Assign datatable to DataGridView
dgvTool.DataSource = data;
//Hide Id column as not needed for user.
dgvTool.Columns[0].Visible = false;
//Refresh the DataGridView
dgvTool.Refresh();
}
我还没有对DataGridView控件进行任何格式化。有人能认出我犯的错误吗 上次更新日期为的
数据类型为
的varchar
和日期为的数据类型为
。这正是造成这种差异的原因。谢谢,我猜您的“上次更新日期”存储为文本(可能是varchar
)是否已检查您的数据库,以查看这些字段是否具有相同的数据类型(日期或字符串)?无论如何,您可以重新定义这些列的表示格式。@如果您是正确的。上次更新日期为的的数据类型是varchar,而的日期为
的数据类型是
于
@Jimi您是对的。我错过了数据类型。谢谢。如果更改字段数据类型,请选择“日期”作为“全部”。