例 : データベースから myDataTable をいくつかのクエリ (多くの異なるクエリ) を介して取得し、フィールドDate
とDateTime
フィールドをユーザーが希望するプレゼンテーションに変更したいと考えています。
void dgv_DataSourceChanged(object sender, EventArgs e)
{
for (int i = 0; i < dgv.Columns.Count; i++)
{
if (myDataTable.Columns[i].DataType == typeof(DateTime))
dgv.Columns[i].DefaultCellStyle.Format = "yyyy-MM-dd HH:mm:ss";
else
{
if (myDataTable.Columns[i].DataType == typeof(Date))
dgv.Columns[i].DefaultCellStyle.Format = "dd-MM-yyyy";
}
}
}
DataType= を持つ列に問題がないことがわかりますが、現在のデータベース クエリに関係なく、DateTime
どうすれば dataType を処理できますか? Date
日付はデータベースで利用できますが、C# では利用できません。
更新:これは、日付値の終了日が 12:00: AM または 00:00:00 であることを確認することで実行できます。しかし、これは偽のソリューションのようで、実際の DateTime 値も同じ値を持つ可能性があります。この値は、DataType がDate
DateTime ではなく、DateTimeであることを保証するものではありません