Diskuze: DateTimePicker

C# .NET .NET (C# a Visual Basic) DateTimePicker American English version English version

Avatar
Maros2470
Člen
Avatar
Maros2470:

Zdravím všechny. Mám dotaz. Je možné nastavit kontrolku DateTimePicker tak, aby po změně data, zůstal běžící aktuální čas?

 
Odpovědět 20.1.2015 9:09
Avatar
rwn
Člen
Avatar
Odpovídá na Maros2470
rwn:

Ahoj, jak to myslíš zůstal běžící aktuální čas? Aktuální čas se dá získat vždy

DateTime aktualniCas = DateTime.Now;
Nahoru Odpovědět 20.1.2015 10:20
Co můžeš naprogramovat dnes, neodkládej na zítřek.
Avatar
Maros2470
Člen
Avatar
Odpovídá na rwn
Maros2470:

No myslím to tak, že když změním datum na DateTimePicker, zůstane tam viset čas, který byl při změně. Já potřebuji např. toto: Dnes je 20.1.2015 11:16:01 a čas běží, posunu datum třeba na 1.1.2015 a čas běží dál dle aktuálního času. Já jsem to udělal zatím takto:

pracovniDatum = pracDateTimePicker.Value.ToShortDateString() + " " + DateTime.Now.ToLongTimeString();

Chtěl jsem se jen zeptat, zda to nejde nějak nastavit přímo na kontrolce, abych to nemusel takto skládat.

 
Nahoru Odpovědět 20.1.2015 11:21
Avatar
rwn
Člen
Avatar
Odpovídá na Maros2470
rwn:

aha, už vím jak jsi to myslel, :) tys to v podstatě myslel tak, že ten čas (hodiny, minuty a sekundy) budou v podstatě ukazovat kdy došlo ke změně datumu. Šlo by to řešit přes událost na DateTimePickeru ValueChanged, přičemž bys DateTimePickeru nastavil hodnoty rok, měsíc a den podle jeho vlasní .Value potom pak hodiny, minuty a sekundy bys vzal z DateTime.Now. Mohlo by to vypadat nějak takto:

private void dateTimePicker1_ValueChanged(object sender, EventArgs e)
{
    dateTimePicker1.Value = new DateTime(dateTimePicker1.Value.Year, dateTimePicker1.Value.Month, dateTimePicker1.Value.Day, DateTime.Now.Hour, DateTime.Now.Minute, DateTime.Now.Second);
}
Nahoru Odpovědět 20.1.2015 11:24
Co můžeš naprogramovat dnes, neodkládej na zítřek.
Avatar
rwn
Člen
Avatar
Odpovídá na Maros2470
rwn:

aha takhle, no na kontrolce to přímo nenastavíš, ale když si to dáš do události, tak se o nic starat dál nemusíš:

private void pracDateTimePicker_ValueChanged(object sender, EventArgs e)
{
    pracDateTimePicker.Text = pracDateTimePicker.Value.ToShortDateString() + " " + DateTime.Now.ToLongTimeString();
}
Nahoru Odpovědět 20.1.2015 11:41
Co můžeš naprogramovat dnes, neodkládej na zítřek.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.