alle Tage einer MonthCalender-Ansicht auslesen
-
Mittwoch, 23. Januar 2013 09:44
Hallo,
einfache Frage: wie kann ich aus einem MonthCalender alle in einer Montasansicht angezeigten (nicht markierten!!!) Tage auslesen? Ich möchte diese Tage, die ja bei jedem Monat unterschiedlich sind in eine Tabelle übertragen, finde da aber kein "item" oder Ähnliches!
Gruß Christoph
Alle Antworten
-
Mittwoch, 23. Januar 2013 16:21
Hallo, wenn ich richtig verstehe wie du das meinst (auch wenn ich nicht weiß warum man das brauchen sollte), dann sollte folgender Code funktionieren:private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e) { DateTime mon = new DateTime(monthCalendar1.SelectionStart.Year, monthCalendar1.SelectionStart.Month, 1);//1. Tag des Monats als DateTime DateTime[] days = new DateTime[6 * 7];//Zeigt 6 Wochen à 7 Tage an if (monthCalendar1.SelectionStart.DayOfWeek == DayOfWeek.Monday)//Montag liegt in der 2. Woche days[0] = mon.AddDays(-7); //1 Woche zurück rechnen. Wenn 1. auf Montag fällt, dann ist er in der 2. Reihe else days[0] = mon.AddDays(-GetDayCountFromMonday(mon.DayOfWeek) + 1);//Anhand des Wochentags vom 1. das Erste Datum berechnen for (int i = 1; i < days.Length; ++i) days[i] = days[i - 1].AddDays(1); //days sollte alle in monthCalendar1 angezeigten Tage enthalten. } private int GetDayCountFromMonday(DayOfWeek dow) { switch (dow) { case DayOfWeek.Monday: return 1; case DayOfWeek.Tuesday: return 2; case DayOfWeek.Wednesday: return 3; case DayOfWeek.Thursday: return 4; case DayOfWeek.Friday: return 5; case DayOfWeek.Saturday: return 6; default: //Sunday return 7; } }Wenn der Kalender mehrere Monate anzeigt, dann muss der Code natürlich noch leicht modifiziert werden.
Koopakiller [kuːpakɪllɐ] | Webseite | Code Beispiele | Facebook | Snippets
- Bearbeitet KoopakillerMicrosoft Community Contributor Mittwoch, 23. Januar 2013 16:25 Code kommentiert
- Als Antwort markiert Robert BreitenhoferMicrosoft Contingent Staff, Moderator Freitag, 1. Februar 2013 10:54
-
Freitag, 1. Februar 2013 10:55Besitzer
Hallo Christoph Michalski,
Ich gehe davon aus, dass die Antwort Dir weitergeholfen hat.
Solltest Du noch "Rückfragen" dazu haben, so gib uns bitte Bescheid.Grüße,
RobertRobert Breitenhofer, MICROSOFT
Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „Entwickler helfen Entwickler“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.

