Gå til innhold

Overstyre visning i gridview


Anbefalte innlegg

En spørring mot en database gir følgende resultat:

 

FlyttetADato | FlyttetASted | FlyttetBDato | FlyttetBSted

I stedet for å binde resultatet til en grid som vanlig, ønsker jeg å plassere resultatene i to kolonner, slik at FlyttetADato og FlyttetBDato legges i samme kolonne, og det samme med FlyttetSted, slik:

 

FlyttetDato | FlyttetSted

Hvordan kan jeg styre en slik visning. Eneste jeg har resonnert med frem til er at AutoGenerateColumns ikke kan være aktivert. Noen tips til hvilke egenskaper jeg må se på?

Lenke til kommentar
Videoannonse
Annonse

Omgikk problemet ved å lage et nytt VIEW som kjører en UNION ALL, og presenterer resultatet i tre kolonner, hvorav den ene kolonnen er primærnøkkelen.

 

Problemet var at jeg ikke ønsket å vise primærnøkkelen, noe jeg oppnådde ved å sette GridView til Databound, og spesifisere de to kolonnene jeg ønsket å vise.

 

Nå er problemet at dersom en primærnøkkel ikke har noen FlyttetDato eller FlyttetSted, så vises det tomme rader i stedet for. Jeg ønsker ikke å vise noen rader som er tomme, men jeg skjønner ikke hvordan jeg kan skjule tomme rader i dette tilfellet.

Lenke til kommentar

Føler at jeg snakker med meg selv, men jeg fant omsider en løsning på dette også, uten at jeg vet om denne var så elegant.

 

Laget en prosedyre som starter når med GridView OnRowDataBound, som kun består av

If e.Row.Cells(0).Text = " " Then e.Row.Visble = False

Slet mest med å finne ut at Text(.ToString) ikke skulle være Null. Skjønner fortsatt ikke hvorfor denne ikke er Null, men det fungerer i alle fall nå.

Lenke til kommentar

Hvis det er NOT NULL vil du jo heller aldri oppleve et tomt felt, siden SQL setningen SET MittTekstFelt = NULL ville gitt feil.

 

Men det er rart at databasen da sier det er NULL, hvis feltet er markert NOT NULL....

 

Men   er jo en snedig verdi, ville ikke "" fungert også da?

Men Gridview saken burde strengt tatt ikke oversatt NULL til  ....

 

Merkvürdich

Lenke til kommentar

Nei, beklager. Gikk litt fort der. Feltet tillater NULL, og det var derfor jeg forventet at alle verdier som ble returnert var NULL dersom de ikke hadde en verdi.

 

Måtte liste ut verdien med .tostring for å se at det var   i stedet for NULL, og det er den oversettelsen jeg ikke skjønner. Kan være pga riktig visning i HTML. Ved databound kan man riktignok velge hva som skal vises dersom verdien er NULL, og et alternativ kan være å erstatte verdien NULL med teksten NULL (eller hva som helst annet). "" fungerte ikke heller.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...