Hej, Har trollatbort mycket tid på Backendsaker på senare dagar. Skapa ett GridView via kod med paging
Jag skulle vilja skapa en GridView via kod utan att lägga till kontrollen till sidan, sedan vill jag få HTML-Koden via RenderControl.
Detta fungerar utan problem:
GridView grdTest = new GridView();
grdTest.ID = "grdTest";
grdTest.DataSource = BLL.GetData.GetCustomers();
grdTest.DataBind();
StringBuilder sb = new StringBuilder();
StringWriter sw = new StringWriter(sb);
HtmlTextWriter tw = new HtmlTextWriter(sw);
grdTest.RenderControl(tw);
Detta fungerar inte:
GridView grdTest = new GridView();
grdTest.ID = "grdTest";
grdTest.DataSource = BLL.GetData.GetCustomers();
grdTest.AllowPaging = true;
grdTest.DataBind();
StringBuilder sb = new StringBuilder();
StringWriter sw = new StringWriter(sb);
HtmlTextWriter tw = new HtmlTextWriter(sw);
grdTest.RenderControl(tw);
När jag lägger till grdTest.AllowPaging = true; så kastas ett NullReferenceException på DataSource.
Om jag sätter grdTest.AllowPaging = true; och lägger till kontrollen till sidan så kommer felet inte att kastas, men detta vill jag inte.
Vet någon varför detta undantag uppstår och om det finns något sätt att skapa ett GridView med Paging via kod utan att lägga till kontrollen till sidan i så fall hur??
Mvh
Big Earn
Sv: Skapa ett GridView via kod med paging
Men en ev trolig orsak skulle kunna vara att Paging nyttjar ViewState m.m.
vilket gör att viss info ev inte kommer att existera där av ev Null felet.
Det är inte alls säkert detta är orsaken men det är det jag på rak arm kan tänka
mig skilljer paging från icke paging... Indexeringar m.m.
Mvh Johan