WPF Datagrid
Hej EksperterLige 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.