Avatar billede karsten_larsen Praktikant
16. juli 2007 - 13:38 Der er 5 kommentarer og
1 løsning

Event GridView1_Sorting afvikles 2 gange ved custom sorting

Hvorfor afvikles eventen "GridView1_Sorting " 2 gange, når man trykker på "kolonne" navnet.


Koden er opbygget som følgende:

Page_Load
        If Page.IsPostBack = False Then
            gwDatabind()
            Session("Retning") = 1
            Session("Paging") = "FirstName "
        End If

gwDatabind
' henter data og bindes til GridView1


' paging event
Protected Sub GridView1_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles GridView1.PageIndexChanging

' henter data og sorter i reakkefoelge
            numberDiv = CType(Session("Retning"), Integer)
            If (numberDiv Mod 2) = 0 Then
                myView.Sort = Session("Paging") & " " & "ASC"
            Else
                myView.Sort = Session("Paging") & " " & "DESC"
            End If

            GridView1.DataSource = myView
            GridView1.PageIndex = e.NewPageIndex
            GridView1.DataBind()

    Public Shared numberDiv As Integer
    Protected Sub GridView1_Sorting(ByVal sender As Object, ByVal e As GridViewSortEventArgs) Handles GridView1.Sorting
        If Page.IsPostBack = True Then
          ' henter data
            numberDiv = CType(Session("Retning"), Integer)
            If (numberDiv Mod 2) = 0 Then
                myView.Sort = e.SortExpression & " " & "ASC"
            Else
                myView.Sort = e.SortExpression & " " & "DESC"
            End If
            Session("Retning") = numberDiv + 1
            Session("Paging") = e.SortExpression
            GridView1.DataSource = myView
            GridView1.DataBind()
        End if
end sub
??:-) karsten_larsen
Avatar billede neoman Novice
16. juli 2007 - 14:19 #1
har du autowireup false ?
Avatar billede neoman Novice
16. juli 2007 - 14:31 #2
Følgende sakset fra http://msdn2.microsoft.com/en-us/library/ms178492(vs.80).aspx

"If you use the Handles keyword, you cannot also include an event attribute in the control markup. If you do, the handler will be called twice."

dvs fjern "Handles..." eller "GridView1_Sorting" fra din markup i aspx filen
Avatar billede karsten_larsen Praktikant
16. juli 2007 - 14:32 #3
sat til true
Avatar billede karsten_larsen Praktikant
16. juli 2007 - 14:33 #4
Den anden kommentar hjalp.
Vil du lave et svar?

:-) karsten_larsen
Avatar billede neoman Novice
16. juli 2007 - 14:36 #5
Autowireup binder ting til Page... har jeg lige læst mig til i  samme link, så det har næppe noget at sige for en control's events.
Avatar billede neoman Novice
16. juli 2007 - 14:37 #6
Ja ok .. btw : "Page.IsPostBack = True" har samme sandhedsværdi som "Page.IsPostBack" :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester