Hoshy Geschrieben 29. September 2008 Geschrieben 29. September 2008 Hallo zusammen, ich habe mir einen Terminplaner geschrieben der soweit gut funktioniert. Bisher werden die Termine in einem SQL-Server Express gespeichert und in einem DatagridView angezeigt. Jetzt möchte ich den Terminplaner etwas ausbauen, so dass man jetzt auch noch das Ende eines Termines angeben kann und die Ausgabe übersichtlicher ist. Für mich besteht jetzt das Problem wie ich Termine anzeigen lassen kann, die dann über mehrere Zellen gehen würden. Denn bisher wurden die Termine einfach nach der Uhrzeit sortiert und angezeigt. So das sie immer nur in einer Zelle gestanden haben. Wie im Screenshot gut zu sehen ist, werden die Termine einfach wie in einem Stabel angezeigt. Ideal wäre es wenn alle Termine die z.b um 13 Uhr anfangen an ein und der selben Position stehen würden. MfG Hoshy Zitieren
Guybrush Threepwood Geschrieben 29. September 2008 Geschrieben 29. September 2008 Kannst du das nochmal etwas genauer erklären was du machen willst bzw wo das Problem ist? Zitieren
Hoshy Geschrieben 29. September 2008 Autor Geschrieben 29. September 2008 wenn du dir das Bild anschaust siehst du doch für einen Termin immer nur ein Feld in der Spalte. Das ist bisher auch so ok. Nur will ich jetzt es möglich machen wenn man einen neuen Termin einträgt, dass man auch ein Ende angeben kann. So wenn ich jetzt in der Datenbank auch noch eine Endzeit habe. Muss ich das ja auch darstellen können, für mich ist die Frage wie ich das machen kann. Das ein Termin über mehrere Zeilen geht. Ich hoffe das kann man leichter verstehen Zitieren
bi0s Geschrieben 29. September 2008 Geschrieben 29. September 2008 Mach doch Lückerfüller rein.. Sprich leere zellen mit ner anderen Farbe und text wie: Kein Termin, oder so... Sonst wüsste ich nicht, wie du das in deinem grid verwirklichen könntest... greez, bi0s Zitieren
Guybrush Threepwood Geschrieben 29. September 2008 Geschrieben 29. September 2008 Wieso machst du die Zeile dann nicht einfach größer bzw. höher? Zitieren
Gladdi Geschrieben 29. September 2008 Geschrieben 29. September 2008 Oder lass dir den ganzen text per mouseover event anzeigen Zitieren
Hoshy Geschrieben 30. September 2008 Autor Geschrieben 30. September 2008 ihr versteht mich leider falsch. Das Bild ist der derzeitige stand vom Programm, d.h. im moment kann ich ja noch keine Endzeitpunkte angeben. Das möchte ich jetzt ändern, so dass ich beim eintragen eines Termines wie bisher eine Anfangszeit habe und dann noch zusätzlich auch eine Endzeit eintragen kann. Die Zeiten sollen je nach dem wie es klappt im 15 Minuten oder 30 Minuten Takt angegeben werden können. Die Daten werden dann in einem SQL-Server gespeichert, zur Darstellung hole ich mir die Daten über einen Select befehl aus dem SQL-Server. (vereinfacht... Select Termine from Benutzer where Datum 30.09.2008) Dann hänge ich den Sqladapter an eine Datatable die dann wiederum an das Datagrid gebunden wird. Die Darstellung wie im Bild zu erkennen ist etwas unpraktisch. Denn wenn ein Benutzer nur einen Termin hat, egal um welcher Uhrzeit steht er immer ganz oben. Das wäre das eine und das andere ist das mit der Dauer von den Terminen. Da über die Abfrage ja jeder Termin nur eine Zelle hat frage ich mich wie ich einen Termin der über mehrere Stunden geht auch so anzeigen lassen kann. MfG Sven Zitieren
Guybrush Threepwood Geschrieben 30. September 2008 Geschrieben 30. September 2008 und zu beidem wurden dir hier Lösungsmöglichkeiten genannt. Ersteres indem du Platzhalterzeilen einfügst und letzteres indem du die Zeile die länger dauert einfach größer machst. Zitieren
Hoshy Geschrieben 30. September 2008 Autor Geschrieben 30. September 2008 in der Theorie kann mir das einer auch erzählen der keine Ahnung von Programmieren hat. Mir geht es um die Umsetzung! Ich denke mir ich muss bevor ich die Daten an das Datagrid binde bearbeiten. Aber wie kann ich das machen?! Wie kann ich den Text eines Termines mitten im Datagrid anzeigen lassen wenn insgesamt nur ein Termin in dieser DataTable ist?! Und wie soll ich einen Termin der länger dauert "verdoppeln" können, wenn er nur einfach in der DataTable ist?! Zitieren
ripperrd Geschrieben 6. Oktober 2008 Geschrieben 6. Oktober 2008 Hallo, ich würde dir vorschlagen erst mal ein buch in die hand zu nehmen und dich ein bisschen mehr mit .Net auseinanderzusetzen, bevor du derart allgemeine und ungenaue fragen stellst. Ein Forum soll eine Hilfestellung bieten, nicht irgendwelche implementierungen vorgeben. Trotzdem hier mal ein Vorschlag: Nutze kein Datagrid. Die von dir gewünschten Effekte sind damit einfach nur sehr unflexibel zu lösen. Versuche lieber deine Termine in ein eigenes Control einzubauen. In solch einem Control (UserControl) kannst du dann so zeichnen wie du es dir vorstellst, auch über die grenze mehrerer "Zellen" hinweg. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.