Domanda

Come in un titolo, qualcuno sa come bloccare l'intestazione GridView in ASP.NET?

È stato utile?

Soluzione

L'opzione (a) acquista in un pacchetto UI che include un GridView complicato con questa funzionalità integrata.

L'opzione (b) crea il tuo - non è semplice. Dino Esposito ha un approccio .

EDIT: ho appena notato che l'articolo Dino si collega a un'area riservata agli abbonati sul sito della rivista ASPnetPro.

Ecco un altro approccio utilizzando gli extender.

Altri suggerimenti

Puoi farlo nel css

Blocco intestazione: 1. Definisci la classe. Freezing in Stylesheet:

.Freezing
{
   position:relative ;
   top:expression(this.offsetParent.scrollTop);
   z-index: 10;
}   

2.Assegna cssClass dell'intestazione di Datagrid a Freezing

Prova questo progetto open source per ASP.NET. Estende GridView per fornire un'intestazione fissa, un piè di pagina e un cercapersone e una larghezza di colonna ridimensionabile. Funziona bene con IE 6/7/8, Firefox 3.0 / 3.5, Chrome e Safari.

http://johnsobrepena.blogspot.com /2009/09/extending-aspnet-gridview-for-fixed.html

Anch'io ho affrontato un problema simile durante lo sviluppo nelle applicazioni Web in Asp.Net 2.0 / 3.5.

Un bel giorno, mi sono imbattuto in IdeaSparks ASP.NET CoolControls . Aiuta a visualizzare intestazioni di colonna, piè di pagina e cercapersone fissi.

Li ho usati personalmente e l'ho adorato davvero!

Per controllare il controllo, fare clic qui: IdeaSparks ASP.NET CoolControls

Spero che questo aiuti!

Penso di avere una soluzione a questo. vedi sotto il codice javascript

<script type="text/javascript" language="javascript">
    var orgTop = 0;
    $(document).scroll(function () {
        var id = $("tr:.header").get(0);
        var offset = $(id).offset();
        var elPosition = $(id).position();
        var elWidth = $(id).width();
        var elHeight = $(id).height();
        if (orgTop == 0) {
            orgTop = elPosition.top;
        }
        if ($(window).scrollTop() <= orgTop) {
            id.style.position = 'relative';
            id.style.top = 'auto';
            id.style.width = 'auto';
            id.style.height = 'auto';
        }
        else {
            id.style.position = 'absolute';
            id.style.top = $(window).scrollTop() + 'px';
            id.style.width = elWidth + 'px';
            id.style.height = elHeight + 'px';

        }
    });
</script>

dove .header è la classe css dell'intestazione Grid.

Basta aggiungere questo script sulla pagina e sostituire header con il nome della classe css che hai usato per la tua intestazione.

Puoi provare il seguente esempio

Freeze GridView colonne

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top