Avatar billede skovjuul Nybegynder
01. marts 2012 - 20:55 Der er 20 kommentarer og
1 løsning

Listview eller...?

Hola

Har kastet mig over C# da jeg skal til at lave en vagtplansoversigt til arbejdet.

Idéen er at der på en smartboardstavle skal vises ugens vagtplan.

Kollonnerne er mandag til søndag og hver kollonne skal indeholde hvem der er på arbejde den dag. Info pr. person er navn, radionummer, opgave og status. Info hentes fra en database.

Mit umiddelbare bud var et listview men der er stor forskel på antallet af medarbejdere pr. dag og de skulle også gerne skilles af en tom "linie" på tværs af tavlen, så man kan se forskel på morgen og aftenholdet.

Hvad bruger jeg til at først udfylde en kollonnne og så sætte den ind i en række?

Hvis ovenstående er helt sort så kan jeg godt prøve at tegne det.

På forhånd tak for hjælpen.
Avatar billede Syska Mester
01. marts 2012 - 21:02 #1
tegn
Avatar billede skovjuul Nybegynder
01. marts 2012 - 21:05 #2
Glemte lige at sige at man skal kunne "køre" frem og tilbage i månederne/året for at se fremtidige dag.
Desuden skal man kunne klikke/trykke på navnet for at vælge radionummer/funktion i når man møder ind. Den information skal så gemmes i DB samtidig med at feltet skal kunne skifte farve af sig selv efterhånden som opgaven skifter karakter i løbet af dagen.

Stadig tegn? Eller bedre bud?
Avatar billede Syska Mester
01. marts 2012 - 21:40 #3
Tegn ... det er lidt upræcist hvad du vil have.

Når man så har tegnet hvad der skal vises ... så burde det være rimelig klart hvad krav der er ... og af de krav ved man hvad der skal bruges.

mvh
Avatar billede skovjuul Nybegynder
02. marts 2012 - 00:38 #4
http://testarea.skovjuul.dk/vagttavlelayout.jpg

Har prøvet at lave et hurtigt layout (som absolut ikke er final :).
Selve vagtplanen er lavet i en word-tabel for at give en idé.

Meningen er at man 1-2 gange om året lægger en vagtplan i en database som så bliver vist på tavlen efterhånden som tiden skrider frem (kan sagtens flyttes manuelt).
Det skal være muligt at hoppe x antal dage frem og lave rettelser (tilføje/slette personer). Man kan evt. også vælge at få vist f.eks. 14 dage af gangen eller kun én dag af gangen.

På dagen skal den indmødte trykke på dropdownboxe(?) og vælge Position og Radionummer (blanke fra start, blot for at vise hvad der skal være).
Dette kan også sagtens være en pop-up box hvor man vælger radio og pos. hvis det er nemmere at håndtere.
Helt optimalt vil det faktisk være i en pop-up box for så kunne man lave noget tidslinie/frokost for hele dagen, men det tager jeg senere.

Hver enkelt medarbejders celle skal kunne skifte farve i løbet af dagen så man kan se hvad han laver (f.eks. rød for frokost, grøn for ledig, blå for "ude af huset" etc.)

Hvordan udfylder jeg bedst vinduet? Jeg kunne forstille mig det må være noget med at indhente:
select * from vagtplan where colday = "date" order by meet_time, vagtnummer
og så gøre det for hver dag?

Men er det muligt i et list-view eller er der bedre alternativer?

Og hvordan håndterer jeg bedst at kunne vælge radio og Pos.?

Håber det hjalp på overblikket :)


Ps. da jeg programmerede i Delphi brugte jeg dbcalender fra TMSsoftware og havde tænkt på noget i den stil layout-mæssigt (mht. kolonne-delen).
Avatar billede skovjuul Nybegynder
02. marts 2012 - 01:08 #5
Kan også være det er nemmere at lave som en net-løsning? ASP eller Silverlight?
Avatar billede Syska Mester
02. marts 2012 - 09:59 #6
Det hele kommer jo an på hvor det skal vises om det skal være asp.net eller windows application.

Jeg ville nok vælge WPF ... men det kræver man sætter sig ind i hvordan det hele virker, så du kan lave mange af de custom ting du efterlyser.

Men ... jeg ville stadig starte med at få helt styr på det grafiske design af hvad der skal vises hvornår og hvorfor. Om det eventuelt giver mening at flytte det væk og først vise det når man klikker et sted. Dette ville jeg gøre for at begrænse den information som vises for at gøre det mere overskueligt.

Men ... jeg ville bruge WPF.
Avatar billede skovjuul Nybegynder
02. marts 2012 - 11:49 #7
Har ikke arbejdet med WPF, men umiddelbart er det mere over i noget hjemmeside syntaks?
Er det nemt at sætte sig ind i? Og er det generelt bedre at bruge end normale Windows Forms?
Er det som web-udvikling i stedet for ASP? Er det stadig nemt at tilgå databaser?
Og til sidst, kan man stadig arbejde med klasser?

Mange spørgsmål men havde slet ikke overvejet WPF, så ved ikke så meget om det.
Avatar billede Syska Mester
02. marts 2012 - 11:57 #8
WPF og Silverlgiht minder om hinanden ... SL er et subset af WPF features. Dog indeholder SL også ting som ikke er i WPF.

WPF er ikke nemt, hvis du sammenligner med WinForms, der er bare ting man skal have styr på i WPF ellers går det helt galt. WinForms er ved at dø, derfor er det en god ide efter min mening at sætte sig ind i WPF.

Det er stadig nemt at tilgå alt ... ligesom WinForms kan ... det er bare en anden måde at præsentere det på grafisk. ( Vector grafik )
Avatar billede skovjuul Nybegynder
02. marts 2012 - 12:05 #9
Ok, vil kigge lidt på WPF (kan det tilgås via web eller er det stadig "bare" en lokal application?).

Men tilbage til mit oprindelige spørgsmål - hvordan / i hvilken component får jeg bedst repræsenteret min kalender? :)
Avatar billede Syska Mester
02. marts 2012 - 12:28 #10
Det er en local application.

Der er som sådan ingen direkte komponent til det, da det du har beskrevet det skal kunne jo er meget custom.

Men det gode ved WPF er at man på en "rimelig"  nemt måde kan lave custom controls, som præcis gør det man vil.

mvh
Avatar billede skovjuul Nybegynder
02. marts 2012 - 12:45 #11
Hmmm... okay, så må jeg jo se hvordan jeg gør det.

Kan WPF tilgå mysql og access da programmet skal hente data fra en fælles database?
Avatar billede Syska Mester
02. marts 2012 - 12:57 #12
Det er .NET så ja ...
Avatar billede skovjuul Nybegynder
02. marts 2012 - 13:22 #13
Så med WPF skulle jeg kunne indhente data, smide det ind i hvad der svarer til en gammeldags <table> hvor nogle af cellerne indeholder dropdownbox og have en timer kørende som holder styr på hvad tid på dagen det er og sammenholder det med f.eks. folks registrede frokoster og andre opgaver i løbet af dagen?


Tak for de mange indput, smid et svar :)
Avatar billede Syska Mester
02. marts 2012 - 13:46 #14
Kort sagt ja ... men du skal nok kigge på noget MVVM for at gøre det lækkert og nemt at arbejde med i fremtiden.

Grid skal du nok kigge på ... det hele synes jeg i hvert fald er nemmere i WPF da det er mere customizable end WinForms.

svar.
Avatar billede skovjuul Nybegynder
02. marts 2012 - 13:57 #15
Sidste spørgsmål.

har du nogle gode ressourcer/sider til at komme godt i gang med WPF og MVVM?
Avatar billede Syska Mester
02. marts 2012 - 14:30 #16
De giver en uges gratis subscription og derefter koster det lidt, så tilmeld dig den gratis periode når du har god tid :-) Der er mange timers træning derinde.

http://www.pluralsight-training.net/microsoft/

Gælder både WPF og MVVM

Ellers er google din gode ven.
Avatar billede skovjuul Nybegynder
02. marts 2012 - 14:41 #17
Tak for det!
Avatar billede Syska Mester
02. marts 2012 - 15:03 #18
Skal selv snart til at se mere på WPF og MMVM.

Så snart kan jeg være til mere hjælp omkring det, hvis du i fremtiden skulle løbe ind i problemer.

mvh
Avatar billede skovjuul Nybegynder
02. marts 2012 - 15:08 #19
Perfekt :).

Det er nok ikke sidste gang jeg poster herinde ang. dette emne :D

Så vidt jeg lige hurtigt kunne se, så kan man integrere et WPF element i et alm. Winforms program - var det ikke en løsning? At holde vagtplanen i WPF og evt. resten af programmen i Winforms?
Avatar billede Syska Mester
02. marts 2012 - 15:18 #20
Virker dumt ... hvor beholde noget gammelt lort som MS nok skrotter i Windows 9 ... ja, lang tid til, men alligevel.

Jeg ville holde mig fra WinForms ... WPF er vector.
Avatar billede skovjuul Nybegynder
02. marts 2012 - 15:24 #21
Ok, giver hele løsningen en chance i WPF :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester