emir
Goto Top

C-Sharp Heutiges Datum um 1 Monat zurückrechnen

Hallo,

könnte mir jemand ein Beispiel-Code bereitstellen. Ich verwende C# .NET 2.0 als Programmiersprache.

Ich stehe vor dem Problem, dass ich 2 Textboxes habe, indem einen das heutige Datum und in die andere Textbox soll das Datum von vor einem Monat stehen.

|----------------| |----------------|
| 09.05.2008 | | 09.04.2008 |
|----------------| |----------------|


Gruß Timur

Content-Key: 87311

Url: https://administrator.de/contentid/87311

Ausgedruckt am: 29.03.2024 um 08:03 Uhr

Mitglied: pulse
pulse 09.05.2008 um 13:52:41 Uhr
Goto Top
Schau dir mal die DateTime-Methode "Substract" an face-smile
Mitglied: emir
emir 09.05.2008 um 14:13:40 Uhr
Goto Top
Danke, für die schnelle Antwort.
Ich werd's mir mal zu Herzen nehmen...

Timur
Mitglied: AndreasHoster
AndreasHoster 09.05.2008 um 15:08:20 Uhr
Goto Top
Und dann noch überlegen, was vor einem Monat genau bedeuten soll, insbesondere bei Tagen wie 30.März, da 30 Februar ein ungültiges Datum ist.
Mitglied: pulse
pulse 09.05.2008 um 15:12:49 Uhr
Goto Top
Substract berücksichtigt sowas, soweit ich weiß, man muss eben nur schauen, dass man genau einen Montag hinbekommt...aber dafür gibt es eine Funktion Diff die vllt auch noch hilfreich sein kann
Mitglied: pulse
pulse 09.05.2008 um 15:26:21 Uhr
Goto Top
Das ist zwar C++ aber lässt sich sehr leicht in C# wandeln ;)
Ging doch leichter als gedacht

Zur erklärung:

über Klicken des Buttons hole ich mir die aktuelle Uhrzeit und schreibe sie formatiert in die textBox1

Per Event TextChanged von textBox1, rufe ich diese Zeit ab und erzeuge ein DateTimeobject
dort Addiere ich -1 Monat hinzu...ziehe ihn also ab.
Dann gebe ich die Zeit formatiert in textBox2 aus


	private: System::Void textBox1_TextChanged(System::Object^  sender, System::EventArgs^  e) {
				 //Datum aus der Textbox in DateTimeObject wandeln
				 DateTime^ Date = DateTime::ParseExact(this->textBox1->Text,"dd.MM.yyyy",gcnew System::Globalization::CultureInfo("de-DE",true));  
				 
				 Date = Date->AddMonths(-1);
				 //Neue Zeit der zweiten Textbox zuweisen
				 this->textBox2->Text = Date->ToString("dd.MM.yyyy");  
			 }

	private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
				 //Jetziges Datum in die erste Textbox schreiben
				 this->textBox1->Text = (DateTime::Now).ToString("dd.MM.yyyy");  
			 }
	};