Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

sorting XML data in DG

15 views
Skip to first unread message

slinky

unread,
Jul 10, 2007, 11:31:27 AM7/10/07
to
I have an XML file that is successfully displaying in my datagrid on
my .aspx. I need to sort the data before it displays:

Here's my .aspx code:

<%@ import Namespace="System.Data" %>
<script runat="server">
Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
Dim myDataSet As New DataSet()
dgBooksPretty.DataSource = myDataSet
dgBooksPretty.AllowSorting = True
myDataSet.ReadXml(Server.MapPath("JFKtimeline.xml"))
dgBooksPretty.DataBind()
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>President John Fitzgerald Kennedy Biographical Timetable</
title>
</head>
<body borderwidth="20px">

<asp:datagrid id="dgBooks"
runat="server"
Visible="False"
Height="1px"
Width="1px" />&nbsp;
<asp:datagrid id="dgBooksPretty"
runat="server"
AutoGenerateColumns="False"
Font-Name="Verdana"
Font-Size="Small"
HorizontalAlign="Center"
ItemStyle-BackColor="#C0FFC0"
AlternatingItemStyle-BackColor="White"
Width="911px"
Height="128px"
AllowSorting="True"
BorderColor="PeachPuff"
BorderStyle="Outset"
BorderWidth="10px">
<HeaderStyle BackColor="DarkGreen"
HorizontalAlign="Center"
ForeColor="White"
Font-Bold="True" />
<Columns>
<asp:BoundColumn HeaderText="Event" DataField="event" />
<asp:BoundColumn HeaderText="Year" DataField="year" />
</Columns>
<AlternatingItemStyle BackColor="White" />
<ItemStyle BackColor="#C0FFC0" />
</asp:datagrid>
<p align="center">
</p>
</body>
</html>

And here is an XSL file for the sorting, but I can't seem to find any
logic to get the sort done... any ideas? Thanks!!!

<xsl:stylesheet
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:strip-space elements="*"/>
<xsl:output method="xml" indent="yes" encoding="UTF-8"/>
<xsl:template match="events">
<xsl:copy>
<xsl:apply-templates select="topic">
<xsl:sort select="year" data-type="number"/>
</xsl:apply-templates>
</xsl:copy>
</xsl:template>
<xsl:template match="@* | node()">
<xsl:copy>
<xsl:apply-templates select="@* | node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>

Alexey Smirnov

unread,
Jul 10, 2007, 2:14:17 PM7/10/07
to
On Jul 10, 5:31 pm, slinky <campbellbrian2...@yahoo.com> wrote:
> I have an XML file that is successfully displaying in my datagrid on
> my .aspx. I need to sort the data before it displays:
>
> Here's my .aspx code:
>
> <%@ import Namespace="System.Data" %>
> <script runat="server">
> Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
> Dim myDataSet As New DataSet()
> dgBooksPretty.DataSource = myDataSet
> dgBooksPretty.AllowSorting = True
> myDataSet.ReadXml(Server.MapPath("JFKtimeline.xml"))
> dgBooksPretty.DataBind()
> End Sub
> </script>

I would create a DataView and use it for sorting

myDataSet.ReadXml(Server.MapPath("JFKtimeline.xml"))
Dim dv As DataView = New DataView(myDataSet.Tables(0))
dv.Sort = "Year"
dgBooksPretty.DataSource = dv
dgBooksPretty.DataBind()

slinky

unread,
Jul 10, 2007, 2:31:17 PM7/10/07
to
Are there any limitations comparing DV and DG? I REALLY like the way
my DG looks!
Go to http://juggernautical.com/JFKtimeline.aspx to see, everything is
perfect just that I can't sort before the page loads.

Thanks!

Alexey Smirnov

unread,
Jul 10, 2007, 2:34:15 PM7/10/07
to
On Jul 10, 8:31 pm, slinky <campbellbrian2...@yahoo.com> wrote:
> Are there any limitations comparing DV and DG? I REALLY like the way
> my DG looks!
> Go tohttp://juggernautical.com/JFKtimeline.aspxto see, everything is

> perfect just that I can't sort before the page loads.
>
> Thanks!

DataView, not a GridView

0 new messages