Avatar billede juhl Nybegynder
06. september 2001 - 13:02 Der er 6 kommentarer og
1 løsning

Gruppering i Datagrid - hvordan?

Hejsa
Nogle der ved om det er muligt at GRUPPERE data i et Datagrid.

Ofte har man en række poster i en tabel/forespørgsel og binder dem til et datagrid, men vil samtidig gerne have dem grupperet efter værdien i et af felter.
Er der nogen der kan fortælle mig om - og i så fald hvordan - det kan lade sig gøre.

Her er et eksempel hvor jeg har grupperet poster fra en tabel - men på gammeldags maner i ASP 3.0
http://piip.edlund2.dk/champions-league/res.asp
(Her er datoen en del af hver enkelt post, men når den skifter, vil jeg indsætte en ekstra række)

Mvh, Jeppe Juhl
Avatar billede proboss Nybegynder
07. september 2001 - 23:20 #1
Prøv på dette link hvem ved
http://www.codejunkies.net/searchresults.aspx?criteria=datagrid

det kan være det kan bruges

//proboss
Avatar billede juhl Nybegynder
08. september 2001 - 12:36 #2
Der har jeg desværre været - og intet fundet. Måske kan det slet ikke lade sig gøre!
Avatar billede proboss Nybegynder
08. september 2001 - 14:01 #3
Jo mon ikke jeg har 17 andre link på min side prøv dem
http://www.solutions2all.dk/links.asp?catid=20&page=0

//proboss
Avatar billede juhl Nybegynder
09. september 2001 - 09:37 #4
Hej igen Proboss!
Nu er det ikke for at være næsvis - men jeg har faktisk forsøgt at støvsuge nettet for information om gruppering i datagrid. Langt de fleste af dine link har jeg været inde på - uden held.
Kender du et link hvor der rent faktisk står noget om gruppering i datagrid - så lad mig endelig høre om det - men at foreslå mig 37 links hvor de måske behandler emnet, kan jeg ikke bruge til noget - det er den måde jeg selv har søgt på!
/Juhl
Avatar billede pizzabar Nybegynder
31. oktober 2001 - 19:29 #5
Hej Jeppe,

Hvis du kan bruge en datalist i stedet kan du gøre noget i den her dur. Jeg har anvendt northwind databasen fra sql server i eksemplet.

Der her er min første post til eksperten og jeg er ikke helt sikker på hvad der sker med formateringen når jeg trykker på \"udfør\" ;-)

Jeg anvender \"onitemdatabound\" til at checke om datoen ændret i forhold til den sidste dato og hvis den er det, så viser jeg en label med den nye dato.

Anyway her er lidt kode :-)

med venlig hilsen

Tony Fabian


--- aspx ----

<form id=\"Form1\" method=\"post\" runat=\"server\">
            <asp:DataList id=\"DataList1\" runat=\"server\" onitemdatabound=\"DataList1_ItemDataBound\" borderwidth=\"1\" enableviewstate=\"False\" style=\"Z-INDEX: 101; LEFT: 0px; POSITION: absolute; TOP: 0px\">
                <itemtemplate>
                    <asp:label id=\"TitleLabel\" visible=\"False\" runat=\"server\"></asp:label>
                    OrderID:
                    <%# container.DataItem(\"OrderID\") %>
                </itemtemplate>
            </asp:DataList>
        </form>


---- code behind aspx.vb ----


Imports System.data
Imports System.Data.SqlClient

Public Class WebForm2
    Inherits System.Web.UI.Page
        Protected WithEvents DataList1 As System.Web.UI.WebControls.DataList
        Protected WithEvents DataGrid1 As System.Web.UI.WebControls.DataGrid
       
#Region \" Web Form Designer Generated Code \"

    \'This call is required by the Web Form Designer.
    <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

    End Sub

    Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
        \'CODEGEN: This method call is required by the Web Form Designer
        \'Do not modify it using the code editor.
        InitializeComponent()
    End Sub

#End Region

Dim MyCurrentDate As DateTime = #1/1/1900#

    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        If Not Page.IsPostBack Then

                  Dim myConnection As SqlConnection
                  Dim myCommand As SqlCommand
                  Dim myReader As SqlDataReader
                  Dim mySQL As String
                  Dim myConnectionString As String

                  mySQL = \"Select OrderID, OrderDate from Orders order by orderdate\"
                  myConnectionString = \"server=localhost;uid=sa;pwd=;database=NorthWind\"

                  myConnection = New SqlConnection(myConnectionString)
                  myCommand = New SqlCommand(mySQL, myConnection)


                  myConnection.Open()
                  myReader = myCommand.ExecuteReader()
                  DataList1.DataSource = myReader
                  DataList1.DataBind()

        End If
    End Sub

    Public Sub DataList1_ItemDataBound(ByVal sender As System.Object, ByVal e As DataListItemEventArgs)

    If (e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem) Then
        Dim OrderDate As DateTime
        OrderDate = e.Item.DataItem(\"OrderDate\")

        If (DateDiff(DateInterval.Day, OrderDate, MyCurrentDate) <> 0) Then

            Dim SeperatorLabel As Label = CType(e.Item.FindControl(\"TitleLabel\"), Label)
            SeperatorLabel.Text = \"<span style=\'color:red\'>Ordre for: \" & OrderDate & \"</span><br>\"
            SeperatorLabel.Visible = True

            MyCurrentDate = OrderDate

        End If
    End If
 
    End Sub

End Class
Avatar billede juhl Nybegynder
17. november 2001 - 01:02 #6
Sikke et lækkert svar jeg fik der - præcis hvad jeg skulle bruge. COOL. Bare irriterende at det ikke lykkedes mig selv at komme op med den løsning. Tak for det - nu skal jeg bare se om jeg kan finde ud af hvordan jeg giver point (jeg er ny her)
Avatar billede juhl Nybegynder
17. november 2001 - 01:04 #7
Ahh Pizzabar - problemet var at du ikke svarede - men kun kommenterede - så kunne jeg ikke give dig point!
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



IT-JOB