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

Printed on: April 23, 2024 at 21:04 o'clock

Member: pulse
pulse May 09, 2008 at 11:52:41 (UTC)
Goto Top
Schau dir mal die DateTime-Methode "Substract" an face-smile
Member: emir
emir May 09, 2008 at 12:13:40 (UTC)
Goto Top
Danke, für die schnelle Antwort.
Ich werd's mir mal zu Herzen nehmen...

Timur
Member: AndreasHoster
AndreasHoster May 09, 2008 at 13:08:20 (UTC)
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.
Member: pulse
pulse May 09, 2008 at 13:12:49 (UTC)
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
Member: pulse
pulse May 09, 2008 at 13:26:21 (UTC)
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");  
			 }
	};