Frågan#1
Hej,
Jag har en GridView som jag nu vill sortera. Har läst min litteratur och kollar runt på olika sidor. Dock förstår jag inte en sak; i vissa exempel verkar det räcka att skriva AllowSorting="True" (http://msdn2.microsoft.com/en-us/library/aa479347.aspx) medan det i andra exempel krävs att man lägger in kod som hanterar själva sorterandet (http://www.syncfusion.com/FAQ/aspnet/web_c4c.aspx#q207q).
Hur är det man ska göra egentligen? Tips motages tacksamt. Här kommer min kod:
<%@ Page Language="VB" Debug="true" %>
<%@ Import Namespace="MySql.Data.MySqlClient" %>
<%@ Import Namespace="System.Data" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="sv" lang="sv">
<head id="Head1" runat="server">
<title>Fredriks priser</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta name="robots" content="noindex, nofollow">
<link rel="stylesheet" href="style/style.css" type="text/css" />
</head>
<body id="prissida">
<form id="form1" runat="server">
<script language="VB" runat="server">
Sub Page_Load(ByVal Sender As Object, ByVal ea As EventArgs)
If Not Page.IsPostBack Then
Dim myConnection As New MySqlConnection("server=x; uid=y; pwd=z; database=s;")
Dim myCommand As New MySqlCommand()
Dim myDataAdapter As New MySqlDataAdapter()
Dim myDataSet As New DataSet()
myCommand.Connection = myConnection
myCommand.CommandText = "SELECT Nummer, Klubb, Segling, Datum, Placering, Klass, Ovrigt FROM tblPriser ORDER BY Nummer ASC"
Try
myDataAdapter.SelectCommand = myCommand
myDataAdapter.Fill(myDataSet)
MySQLDataGrid.DataSource = myDataSet
MySQLDataGrid.DataBind()
Catch ex As MySqlException
Select Case ex.Number
Case 0
Response.Write("Cannot connect to server. Contact administrator")
Case 1045
Response.Write("Invalid username/password, please try again")
End Select
End Try
End If
End Sub
</script>
<asp:GridView ID="MySQLDataGrid" runat="server" AutoGenerateColumns="False"
AllowPaging="True" PageSize="5" AllowSorting="True"
CellPadding="4" ForeColor="#333333" GridLines="None"
EnableSortingAndPagingCallbacks="True" >
<PagerSettings Mode="NumericFirstLast" />
<FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
<Columns>
<asp:BoundField ReadOnly="True" HeaderText="Nummer"
InsertVisible="False" DataField="Nummer"
SortExpression="Nummer"></asp:BoundField>
<asp:BoundField ReadOnly="True" HeaderText="Klubb"
InsertVisible="False" DataField="Klubb"
SortExpression="Klubb"></asp:BoundField>
<asp:BoundField ReadOnly="True" HeaderText="Segling"
InsertVisible="False" DataField="Segling"
SortExpression="Segling"></asp:BoundField>
<asp:BoundField ReadOnly="True" HeaderText="Datum"
InsertVisible="False" DataField="Datum" DataFormatString="{0:yyyy-MM-dd}"
SortExpression="Datum"></asp:BoundField>
<asp:BoundField ReadOnly="True" HeaderText="Placering"
InsertVisible="False" DataField="Placering"
SortExpression="Placering"></asp:BoundField>
<asp:BoundField ReadOnly="True" HeaderText="Klass"
InsertVisible="False" DataField="Klass"
SortExpression="Klass"></asp:BoundField>
<asp:BoundField ReadOnly="True" HeaderText="Övrigt"
InsertVisible="False" DataField="Ovrigt"
SortExpression="Ovrigt"></asp:BoundField>
</Columns>
<PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
<SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
<HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<EditRowStyle BackColor="#999999" />
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
</asp:GridView>
</form>
</body>
</html>
tack tack!