C# - 如何为 24 小时时间格式实现 DateTime.TryParse

标签 c# .net

有人可以演示如何将 DateTime.TryParse 实现到我当前接受整数的代码中。例如 24 小时制时间格式 23:00

private void textBox2_Validating(object sender, CancelEventArgs e)
{
    int numberEntered;

    if (int.TryParse(textBox2.Text, out numberEntered))
    {
         if (numberEntered < 1 || numberEntered > 28)
         {
              MessageBox.Show("");
              textBox2.Text = 5.ToString();
         }
    }
    else
    {
         MessageBox.Show("");
         textBox2.Text = 5.ToString();
    }
}

最佳答案

这应该做你想做的:

    void textBox1_Validating(object sender, CancelEventArgs e)
    {
        DateTime dateEntered;

        if (DateTime.TryParseExact(textBox1.Text, "HH:mm", System.Globalization.CultureInfo.CurrentCulture, System.Globalization.DateTimeStyles.None, out dateEntered))
        {
            MessageBox.Show(dateEntered.ToString());
        }
        else
        {
            MessageBox.Show("You need to enter valid 24hr time");
        }

    }

我建议您仔细阅读 DateTime.TryParseExact 可用的各种参数。 ,并谨慎选择符合您情况的。还要查看由此解析生成的实际 DataTime 对象的值,因为它们也将具有 Date 部分 - 如果您稍后使用此数据(特别是用于比较这些时间),这些细节可能很重要。

关于C# - 如何为 24 小时时间格式实现 DateTime.TryParse,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6405311/

相关文章:

jquery - 为表内嵌创建新的可创建行

c# - Generics & Reflection - GenericArguments[0] 违反类型约束

.net - 确定 TTF 字体文件名

javascript - 根据弹出窗口 JavaScript 的返回值更改 ASP.NET 面板可见性

c# - 如何在C#中将参数传递给异步任务

c# - Windows 服务 app.config 位置

asp.net - 如何将 Sitecore Droptree 源设置为项目本身

c# - 意外的格式异常

c# - 在 C# 中强制实现没有接口(interface)或抽象类的方法

.net - 如何禁用所有 .NET 安全策略?