C# 如何在dataGridView中转换日期时间?
我的数据库中有datetime列。我想绑定到C# 如何在dataGridView中转换日期时间?,c#,sqlite,datagridview,C#,Sqlite,Datagridview,我的数据库中有datetime列。我想绑定到DataGridView,但在将数据绑定到表时,DateTime格式有问题 我读到过这样的关于更改格式的datatime mydatagridView.Columns[0].dataGridViewCellStyle.Format = "dd/MM/yyyy"; 但它不起作用 这是使用数据库中的绑定数据的代码 Connect(); SQLiteCommand cmdDataBase=newsqlitecommand(“从数据库中选择日期”,Conne
DataGridView
,但在将数据绑定到表时,DateTime
格式有问题
我读到过这样的关于更改格式的datatime
mydatagridView.Columns[0].dataGridViewCellStyle.Format = "dd/MM/yyyy";
但它不起作用
这是使用数据库中的绑定数据的代码
Connect();
SQLiteCommand cmdDataBase=newsqlitecommand(“从数据库中选择日期”,Connect());
尝试
{
SQLiteDataAdapter sda=新的SQLiteDataAdapter();
sda.SelectCommand=cmdDataBase;
DataTable dbdataset=新DataTable();
sda.Fill(数据库数据集);
BindingSource bSource=新的BindingSource();
bSource.DataSource=dbdataset;
dataGridView1.DataSource=bSource;
sda.Update(数据库数据集);
}
捕获(例外情况除外)
{
MessageBox.Show(例如Message);
}
我认为问题在于数据表
中第一列的列类型
可能未定义为日期时间
,因此它无法识别格式模式
为了更新列类型,必须编辑DataTable
,但是,一旦DataTable中填充了数据,就不允许编辑列,也不允许编辑列,因为您使用.Fill()
方法动态地进行编辑
但是,您可以创建DataTable结构的克隆并应用所需的列修改,然后将数据从一个复制到另一个
SQLiteDataAdapter sda = new SQLiteDataAdapter();
sda.SelectCommand = cmdDataBase;
DataTable dbdataset = new DataTable();
sda.Fill(dbdataset);
DataTable dbdatasetclone = dbdataset.Clone();
dbdatasetclone.Columns[0].DataType = typeof(DateTime);
foreach (DataRow row in dbdataset.Rows)
{
dbdatasetclone.ImportRow(row);
}
BindingSource bSource = new BindingSource();
bSource.DataSource = dbdatasetclone;
dataGridView1.DataSource = bSource;
dataGridView1.Columns[0].DefaultCellStyle.Format = "dd/MM/yyyy";
我认为问题在于
数据表
中第一列的列类型
可能没有定义为日期时间
,因此它无法识别格式模式
为了更新列类型,必须编辑DataTable
,但是,一旦DataTable中填充了数据,就不允许编辑列,也不允许编辑列,因为您使用.Fill()
方法动态地进行编辑
但是,您可以创建DataTable结构的克隆并应用所需的列修改,然后将数据从一个复制到另一个
SQLiteDataAdapter sda = new SQLiteDataAdapter();
sda.SelectCommand = cmdDataBase;
DataTable dbdataset = new DataTable();
sda.Fill(dbdataset);
DataTable dbdatasetclone = dbdataset.Clone();
dbdatasetclone.Columns[0].DataType = typeof(DateTime);
foreach (DataRow row in dbdataset.Rows)
{
dbdatasetclone.ImportRow(row);
}
BindingSource bSource = new BindingSource();
bSource.DataSource = dbdatasetclone;
dataGridView1.DataSource = bSource;
dataGridView1.Columns[0].DefaultCellStyle.Format = "dd/MM/yyyy";
你有什么问题?没有数据出现?向我们展示表格定义我无法将日期时间格式从数据库绑定到DataGridView您有什么问题?没有数据出现?向我们显示表定义我无法将日期时间格式从数据库绑定到datagridView