我在TextBox控件中有一个带日期值的表单。该表单使用数据绑定与BindingSource对DataSet和SQL 2005 CE数据库。 我在哪里控制日期的格式?例如,在沿途的物业中,我没有看到剥去时间部分的可能性。
我当然可以在数据库中执行它并传递字符串而不是DateTime,但这是解决方法而不是解决方案。
答案 0 :(得分:7)
您可以处理事件 Binding.Format 事件以格式化日期。与其对应的 Binding.Parse 来解析TextBox的输入。
E.g。
TextBox.DataBindings["Text"].Format += new ConvertEventHandler(FormatDateEventHandler);
...
private void FormatDateEventHandler (object sender, ConvertEventArgs e)
{
if (! Convert.IsDBNull (e.Value))
{
e.Value = ((DateTime)e.Value).ToString ("d", CultureInfo.CurrentCulture);
}
}
答案 1 :(得分:6)
使用设计器,选择文本框,单击属性选项卡,选择(DataBindings) - 高级。
在这里,您可以选择日期时间数据类型,也可以选择仅删除日期或时间等。