Avatar billede smal64 Novice
13. november 2017 - 10:50

WPF Datagrid

Hej Eksperter

Lige et hurtigt spørgsmål vedrørende ovennævnte. Jeg sidder og laver et undervisnings projekt i C# og bruger hertil et WPF projekt i Visual Studio.
I projektet kommer der løbende data ind, som vises i et Datagrid. Vi har 2 vejs databinding, således at data der løbende indtastes af program brugeren, bliver vist i vores Datagrid  og således at vi kan editere i 2 koloner i vores Datagrid og de indtastede ændringer her så bliver vist andet steds på vores side.

Som nævnt har vi 2 vejs databinding og OnPropertyChaned logik så det hele køer som forventet => uanset hvor vi retter henne, bliver data korrekt opdateret både på "rette stedet" og også andre steder på siden.

Problemet er, at når vi implementerer kode til paging funktionalitet på vores Datagrid, kan vi ikke længere editere data direkte i dette. Prøver vi at editere i én af de 2 editerbare kolonner i Datagrid'et, går vores program ned med denne fejlmeddelse : System.InvalidOperationException: "EditItem" er ikke tilladt for denne visning.

Dette skyldes, at vi databinder vores Dagrid igen, når vi har Paging funktionalitet implementeret og her bruger Take kommandoen på vores datakilde for kun at vise et specificeret antal data rækker i vores Datagrid.I pseudo kode ser det ud som følger :
Datagrid.ItemSource = "DataSource".Take("Antal rækker");

Hvis vi undlader Take extension på vores DataSource kører det helt som det plejer og dermed at vi kan editere i vores Datagrid. Men så forsvinder vores ønskede Paging funktionalitet selvfølgelig også.

Jeg tror vi mangler en opsætning eller 2 på vores Datagrid, men jeg kan ikke lige finde ud af hvilke(n) og alle de eksempler jeg har kunnet finde på nettet, har samme problem mht. editering som vores eget projekt har. 

Så et par vise ord omkring afhjælpning af dette problem vil være meget velkomne.
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

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



IT-JOB