进入DataGrid
我正在显示所有“工作”日期(DateColumn列):
ColX | DateColumn | ColZ
1 | 2018-09-03 | A
10 | 2018-09-04 | AA
8 | 2018-09-05 | A1
234 | 2018-09-06 | C20
现在我正在尝试构建方法,将日期列表更改为下一个和上个月。我的问题是从我的ObservableCollection
获得当前月份。
private void PrevMonth_Executed(object obj)
{
//Console.WriteLine(MyConceptItems.ElementAt(0).DateColumn);--2018-09-03
int month = DateTime.ParseExact(MyConceptItems.ElementAt(0).
DateColumn, "YYYY-MM-DD", CultureInfo.InvariantCulture).Month
}
它让我低于错误:
Exception thrown: 'System.FormatException' in mscorlib.dll
An unhandled exception of type 'System.FormatException' occurred in mscorlib.dll
String was not recognized as a valid DateTime.
如果DateColumn
是DateTime
你可以这样做:
int month = MyConceptItems.ElementAt(0).DateColumn.Month;
如果它是string
你应该真的改变类型为DateTime
。或者在解析string
值时使用以下格式:
int month = DateTime.ParseExact(MyConceptItems.ElementAt(0).DateColumn, "yyyy-MM-dd", CultureInfo.InvariantCulture).Month;