Entwickler-Ecke

WinForms - MonthKalender


JoKaBo - Mi 22.12.10 19:27
Titel: MonthKalender
Ich brauche Für mein Programm in einer MassageBox
Einen MonthKalender Und wenn ich auf ein datum drüke und Ok drüke Wird das in der richttextBox Angezeigt


Moderiert von user profile iconKha: Topic aus Off Topic verschoben am Mi 22.12.2010 um 19:02


jaenicke - Mi 22.12.10 19:30

Und was ist die Frage?


JoKaBo - Mi 22.12.10 19:32

Wie ich es mache


jaenicke - Mi 22.12.10 19:35

Wie du es machst bzw. versuchst, weiß ich nicht.

Jedenfalls genügt es ein neues Fenster zu erstellen und die Komponente darauf zu packen wie du es möchtest. Dann brauchst du dieses Fenster nur noch anzuzeigen, wenn es angezeigt werden soll.


ALF - Mi 22.12.10 19:36

Ein bisschen viel wünsche aber keine Frage.
Aber weil bald Weinachten ist....
Ein Kalender gibt es in den Beispielen von Delphi. Eine MessageBox ruft man so auf, steht auch in der DH

Delphi-Quelltext
1:
MessageBox('This should be on top.''Look', [smbOK]);                    


Gruss ALf


Yogu - Mi 22.12.10 19:48

Man sollte vielleicht dazu sagen, dass eine C#-Lösung gesucht wird. Oder das Thema in einer passenderen Sparte erstellen...

Die MessageBox kannst du mit MessageBox.Show("Hallo"); aufrufen. Der MonthCalendar befindet sich in der Toolbox unter "Allgemeine Steuerelemente". Auf das ausgewählte Datum kannst du mit monthCalendar1.SelectionStart zugreifen. Das sollte als Anhaltspunkt genügen.


JoKaBo - Mi 22.12.10 19:53

Alf in C# bitte

Und jaenicke
wie mache ich das mit einer andern Form Gut die Form gestalten
aber wie ist der Code weil mit einen MothKalender Kenne ich mich nicht aus und und wie mache ich das das der Text dann auf einer anderen Form ist???

ich habe ja schon Probirt

Zitat:

this.Richttextbox1.text = this.MonthKalender.Text();


Aber der monthkalender kann kein text an Geben


ALF - Mi 22.12.10 19:58

user profile iconJoKaBo hat folgendes geschrieben Zum zitierten Posting springen:
Alf in C# bitte

Bin leider kein Hellseher das Du in C# schreibst

Gruss ALf


Yogu - Mi 22.12.10 19:59

user profile iconJoKaBo hat folgendes geschrieben Zum zitierten Posting springen:
ich habe ja schon Probirt


C#-Quelltext
1:
this.Richttextbox1.text = this.MonthKalender.Text();                    

Vor fünf Minuten habe ich dir geschrieben, wie man es richtig macht... Du musst nur noch rausfinden, wie man den Typ von der Eigenschaft SelectionStart in einen string umwandelt. Dafür dir sei ein Blick in ein Handbuch oder die Tastenkombination F1 ans Herz gelegt.


JoKaBo - Mi 22.12.10 20:13

Bei mir get das nicht mit F1
Und ich habe es schn mit Zahl,Datum Probirt aber das get nicht und ich weis nich wie ich das aus einer anderen form hole.

---Moderiert von user profile iconNarses: Beiträge zusammengefasst---

Ok das habe ich gefunden aber dan stet auch noch immer
"System.Windows.Forms.MonthCalendar, SelectionRange: Start:"
ich habe den string "ToString"


Yogu - Mi 22.12.10 21:13

Kannst du mal den Code zeigen, der zu dieser Ausgabe geführt hat?


JoKaBo - Mi 22.12.10 21:14


C#-Quelltext
1:
this.rtfXML.Text = this.monthCalendar1.ToString();                    


Moderiert von user profile iconNarses: Quote- durch C#-Tags ersetzt


jaenicke - Mi 22.12.10 21:17

:roll:
user profile iconYogu hat folgendes geschrieben Zum zitierten Posting springen:
Du musst nur noch rausfinden, wie man den Typ von der Eigenschaft SelectionStart in einen string umwandelt.


JoKaBo - Mi 22.12.10 21:29

Und wie mache ich das das genau das sein soll aber das ich das uber eine andere form mache
also Ich drüke auf einen Button dan Öffnet sich die form wen ich ein datum ausgewelt habe und ok drüke soll sich das Datum auf form1 in der RichttextBox erscheint


jaenicke - Mi 22.12.10 21:31

Dafür kannst du in der Fensterklasse eine Eigenschaft zur Verfügung stellen, über die dann das aufrufende Fenster den Wert auslesen kann.
http://msdn.microsoft.com/de-de/library/x9fsa0sw(v=vs.80).aspx


JoKaBo - Do 23.12.10 19:21

ich weis nicht warum aber des von diesem link geht nicht


jaenicke - Do 23.12.10 19:54

Was hast du versucht? Was passiert? :roll:


JoKaBo - Do 23.12.10 20:08

ich habe den Code genommen Und eingefugt alle Nötigen sachen umbenant und wenn ich das Programm starte und nacher Beim MonthCalender Ok drüke schlißt es sich und nichts passirt


Yogu - Do 23.12.10 20:45

Der verlinkte Artikel beschreibt, wie man Eigenschaften erstellt, nicht wie man einen Kalenderdialog umsetzt. Dein OK-Button muss etwas tun, wenn er angeklickt wird. Um zur Methode zu gelangen, die dann ausgeführt wird, wenn der Button angeklickt wird, doppelklickst du ihn einfach im Designer. Dort muss jetzt der ausgewählte Tag in die RichText-Komponente übernommen werden.


JoKaBo - Do 23.12.10 20:51

Also ich weiß und ich finde auch nichts wie ich das datum auf eine anderen form bekomme

wen es auf einer form ist kann ich es ja baer nicht Über marere formen
Zitat:
this.rtfXML.Text = this.monthCalendar1.ToString();


wen es zu komplizirt ist dann kuke ich mal in das buch was ich morgen zu weineachten bekommen rein


Yogu - Do 23.12.10 21:02

user profile iconJoKaBo hat folgendes geschrieben Zum zitierten Posting springen:
Also ich weiß und ich finde auch nichts wie ich das datum auf eine anderen form bekomme

Wenn du im Internet danach suchst, wie man ein Datum von einer Form in eine andere übernimmt, bist du auf dem Holzweg. Als erstes solltest du dein Problem in mehrere Schritte aufteilen. Das macht man nur im Kopf, ganz ohne Google oder Bücher.

  1. Datum vom MonthCalendar ermitteln und seichern
  2. Datum als Eigenschaft zur Verfügung stellen
  3. Im Hauptfenster diese Eigenschaft auslesen
  4. Das Datum in einen String umwandeln
  5. Den String in den RichText-Editor einfügen

Das erste hab ich dir irgendwann mal erklärt. Zum zweiten Punkt hat dir user profile iconjaenicke einen Link gegeben. Das dritte dürfte selbstverständlich sein, wenn man etwas Grundlagen kennt und wird im übrigen im verlinkten Artikel auch erklärt. Den vierten Punkt hast du ja schon so gut wie rausgefunden; ToString ist die richtige Methode. Das letzte dürfte kein Problem darstellen.

Du siehst also, dass eigentlich kein Grund zur weiteren Recherche besteht.

Hier im Forum heißt es normalerweise: Erst überlegt der Fragesteller, wie weit er eigentlich ist und wie sein Problem genau aussieht. Diese konkrete Frage kann er dann im Forum stellen. Und deren Antwort kann er wiederum in sein Programm einbauen.

user profile iconJoKaBo hat folgendes geschrieben Zum zitierten Posting springen:
wen es zu komplizirt ist dann kuke ich mal in das buch was ich morgen zu weineachten bekommen rein

Das ist sicherlich eine gute Idee.


JoKaBo - Fr 24.12.10 12:12

ich abe jezt Vollgenen Code:


C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
monthCalendar1.SelectionStart.ToString();
Console.WriteLine(DateTime.Now.ToString());
string date = "01/08/2008";
DateTime dt = Convert.ToDateTime(date);
Console.WriteLine("Year: {0}, Month: {1}, Day: {2}", dt.Year, dt.Month, dt.Day);
IFormatProvider culture = new System.Globalization.CultureInfo("fr-FR"true);
DateTime dt2 = DateTime.Parse(date, culture, System.Globalization.DateTimeStyles.AssumeLocal);
Console.WriteLine("Year: {0}, Month: {1}, Day {2}", dt2.Year, dt2.Month, dt2.Day);


Moderiert von user profile iconTh69: Quote- durch C#-Tags ersetzt


jaenicke - Fr 24.12.10 15:52

Und was genau stellst du dir vor, was zum Beispiel die erste Zeile macht?

Und was es bringt einen festen Datumsstring auf zwei Arten in eine Datumswert umzuwandeln, ist mir auch nicht auf Anhieb klar...


JoKaBo - Fr 24.12.10 19:39

wenn ich in dem MonthCalender Ein datum auswäle und Ok drüke das dan Das vollgend ort steht "tt;mm;jj"


L.G.
JoKaBo


Philip E - Mo 04.06.12 16:10


C#-Quelltext
1:
this.monthCalendar1.SelectionRange.Start.ToShortDateString();                    

als wenn eine einfache antwort etwas unmögliches wäre....

Moderiert von user profile iconTh69: C#-Tags hinzugefügt