繁体   English   中英

如何将文本值转换为 24 小时日期时间对象 c#

[英]how to convert text value into 24 hour datetime object c#

我的 WPF 应用程序中有一个文本框,我在其中获取 24 小时格式的时间。 我想要的是,如果我的文本框的时间小于当前时间,那么IF 条件应该为真但它不起作用......

例如:

txtdeparturetime.Text = 00:10

time == 00:31// time==>(object) here current time

if(txtdeparturetime.Text < time) // than this should work

下面是我的代码。

DateTime time = new DateTime();

DateTime deptime = DateTime.Parse(txtdeparturetime.Text);//converting textbox value into date object

if ((TimeSpan.Compare(deptime.TimeOfDay, time.TimeOfDay)) == -1)
{
    //some code here          
}

您想与DateTime.Now而不是new DateTime()进行比较,并且可以使用简单的<比较运算符。

DateTime now = DateTime.Now;    
DateTime deptime = DateTime.Parse(txtdeparturetime.Text);

if (deptime.TimeOfDay < now.TimeOfDay)
{
     //some code here          
}

这是一个由常量而不是文本字段设置的文本的工作示例。

 public static void test1()
 {
    DateTime now = DateTime.Now;
    string timetext = "2017-02-04 12:16PM";
    DateTime deptime = DateTime.Parse(timetext);
    Console.WriteLine("text time="+timetext);
    if (deptime.TimeOfDay < now.TimeOfDay)
    {
        Console.WriteLine("time is less than now");
    }
    Console.WriteLine("End");
    Console.ReadLine();
}

在此处输入图片说明

你的代码有一些错误......

    private void button1_Click(object sender, EventArgs e)
    {
        DateTime t1 = DateTime.Now;
        DateTime t2 = Convert.ToDateTime(textBox1.Text);
        int i = DateTime.Compare(t1, t2);

        if (i < 1)
        {

        }

    }

现在,如果t1小于t2 ,变量i将小于零

如果 t1 等于 t2,则结果为零

最后,如果t1大于t2结果将大于Zero

暂无
暂无

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

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