ciao,
tecnicamente la GridView viene poi renderizzata come "<table>...</table>" di HTML (con dentro altre table, cmq diciamo che è una table).
Se metti un div come contenitore, il div avrà sempre la lunghezza della table, non devi preoccuparti del fatto che la grid abbia tante righe, il div rimarrà empre come contenitore.
Perciò, puoi pensare di usare il padding del contenitore, e metterci dei div di contorno sopra e sotto ai quali metti uno sfondo ad esempio, qualcosa come:
<div class="testa"></div>
<div class="contenitore">
<asp:Gridview....
</div>
<div class="piede"></div>
e poi il css associato puoi fare qualcosa come:
.testa { padding:3px; background-image:url(...); }
.contenitore { padding:3px; background-image:url(...); }
.testa { padding:3px; background-image:url(...); }
e mettere i vari pezzi che fanno il bordo, magari uno sfondo sfumato con un'immagine etc...quello che vuoi.
Il concetto è cmq quello, usare dei div combinati con i css per simulare un bordo, trovi degli esempi qui:
http://www.cssjuice.com/25-rounded-corners-techniques-with-css/
ps: puoi anche usare ie7 e aprire un rss (tipo questo: http://blogs.dotnethell.it/freeteo/rss.aspx) come vedi ti crea un box a destra, ecco se guardi il sorgente della pagina vedi che una tecnica di "div" innestati insieme ad un po' di css, simulano un bordo come una Form di Vista.
ciao.
Matteo Raumer
[MVP Visual C#]
http://blogs.dotnethell.it/freeteo