繁体   English   中英

如何从日期时间列中按月份过滤数据视图?

[英]How do I filter a dataview by month from a datetime column?

我有一个DataGridView ,我想按另一个组合中的月份名称进行过滤。 我有一列(datetime列,称为“数据”),其中包含日期值。

我想,首先,我需要从日期字段中提取月份名称,并将其与组合框选择的项目进行比较。

数据是从mysql接收的,它是Windows窗体。

因此,在我要过滤的datagrid中,日期字段称为“数据”。 包含月份名称的组合已填充:

for (int i = 0; i <= 12; i++)
        {
            comboBox3.Items.Add(System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.MonthNames[i]);
        }

因此,当我从组合中选择一个月时,我希望过滤数据网格中的记录,以便仅显示组合中指定的月份中的记录。

我不知道如何制作过滤器。 数据网格中的日期字段为(“ yy-mm-dd”),该组合包含月份名称。 我试图将datagrid中的日期字段格式化为“ MMMM”-与组合相同的格式,但是它不起作用,我猜是因为值仍然是yy-mm-dd格式,只是细胞改变了。

这是一个解决方案...

dt.DefaultView.RowFilter = "CONVERT(SUBSTRING(CONVERT(data, 'System.String'), 4, 2), 'System.Int32')-1= " + comboBox3.SelectedIndex;

我瞄准了组合的索引,过滤器得到的是月份号,而不是名称……我使用的是罗马尼亚文化,因此对于英语,必须稍加修改。 感谢大家...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM