Diskuze: DateTimePicker
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 6 zpráv z 6.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Ahoj, jak to myslíš zůstal běžící aktuální čas? Aktuální čas se dá získat vždy
DateTime aktualniCas = DateTime.Now;
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.
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);
}
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();
}
Zobrazeno 6 zpráv z 6.