Først min kodefil:
Option Strict Off
Imports System
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Data
Imports System.XML
Imports Microsoft.VisualBasic
Public Class XML : Inherits Page
Protected dgKlub as Datagrid
Protected dgtest, dgtest2 as Datagrid
Protected lblfejl as label
Protected txtklubid as textbox
Protected btnhentdata as linkbutton
public XMLdata as New Dataset
Dim SortExpression As String
public antalspillere as string
public XMLKlub as String
public Shared numberDiv as integer
Public teknik, mental, fysik, stats as string
Public sub Page_Load(Source as Object, E as EventArgs)
if page.ispostback
lblfejl.visible = false
end if
end sub
public sub data(sender As Object, e As System.EventArgs)
Xmldata.clear()
hentdata()
end sub
private function hentdata() as dataset
xmlklub = "
http://xxx.dk/xmlout2.php?klub_id=" & txtklubid.text
XMLdata.ReadXML(XMLKlub)
Select Case tjekklub(xmldata)
Case "aktiv"
dgklub.visible = true
dgKlub.datasource = XMLData.Tables("klub")
dgKlub.databind()
Select case tjek_spillere(xmldata)
Case "har spillere"
antalspillere = antal_spillere(xmldata)
dgtest.visible = true
dgtest.datasource = XMLData.Tables("spiller")
dgtest.databind()
Case "har ikke spillere"
antalspillere = "Ingen spillere"
dgtest.visible = false
end select
Case "ikke aktiv"
dgklub.visible = false
dgtest.visible = false
lblfejl.visible = true
lblfejl.text = "Klubben findes ikke"
end select
return xmldata
end function
Private function tjekklub(d as dataset) as string
dim doc as new XmlDocument()
doc.LoadXML(d.getXML)
dim xxx as XmlNode = doc.SelectSingleNode("//doc/klub/klub_id")
If xxx.HasChildNodes Then
return "aktiv"
else
return "ikke aktiv"
End If
End function
Private function tjek_spillere(d as dataset)
dim doc as new XmlDocument()
doc.LoadXML(d.getxml)
dim xxx as XmlNode = doc.SelectSingleNode("//doc/klub/spillere")
If xxx.HasChildNodes Then
return "har spillere"
else
return "har ikke spillere"
End If
End function
Private function antal_spillere(d as dataset) as string
try
Dim dtable as datatable = d.tables("spiller")
Dim strExpr As String
strExpr = "spiller_id > 0"
Dim foundRows As DataRow() = dtable.Select(strExpr)
Dim row as datarow
If foundRows.Length <= 0 Then
return "Ingen spillere"
else
return foundRows.Length.tostring()
End If
catch ex as exception
'fejlbesked her
end try
End function
Public Function Skill(navn as string, a As Integer, b As Integer, c As integer, d as integer, e as integer, f as integer) As Integer
Select Case navn
Case "teknik"
response.write("teknik")
Case "mental"
response.write("mental")
Case "fysik"
response.write("fysik")
End select
Return a + b + c + d + e + f
End Function
Public Function Samletskill(a As Integer, b As Integer, c As integer, d as integer, e as integer, f as integer, g as integer, h as integer, i as integer, j as integer, k as integer, l as integer, m as integer, n as integer, o as integer, p as integer, r as integer, s as integer) As Integer
stats = a + b + c + d + e + f + g + h + i + j + k + l + m + n + o + p + r + s
return stats
End Function
Public Function maxindtaegt(a As Integer, b As Integer, c As integer) As integer
Return a * b * c
End Function
Public sub sortering(source As Object, e As System.Web.UI.WebControls.DataGridSortCommandEventArgs)
Dim d as dataset = hentdata()
Dim xview as new Dataview(d.tables("spiller"))
'if ((numberDiv Mod 2) = 0)
' xview.sort = e.SortExpression & " " & "ASC"
'Else
' xview.sort = e.SortExpression & " " & "DESC"
'End If
xview.sort = e.SortExpression
'numberdiv = numberDiv + 1
dgtest.Datasource = xview
dgtest.databind()
End sub
Public Function formater(a as datetime) As string
Dim nu as DateTime = DateTime.Now
Dim Udloeb As System.TimeSpan = System.DateTime.op_Subtraction(a.Tostring(), nu.Tostring())
Dim streng as string
If udloeb.days.tostring() < 3 then
streng = "<b><font color='#ff00000'>" & Udloeb.days & " Dage " & Udloeb.Hours & " timer og " & Udloeb.Minutes & " min</font></b>"
else
streng = Udloeb.days & " Dage " & Udloeb.Hours & " timer og " & Udloeb.Minutes & " min"
end if
return streng
End Function
Public function Udmaerk(a as string) as string
Select case a
Case "Talent"
Return "<img src='
http://www.xxx.dk/gfx/talent.gif' alt='" & a & "' />"
Case "Wonderkid"
Return "<img src='
http://www.xxx.dk/gfx/wonderkid.gif' alt='" & a & "' />"
Case "Klasse-keeper"
Return "<img src='
http://www.xxx.dk/gfx/klasse.gif' alt='" & a & "' />"
Case "Klasse-forsvar"
Return "<img src='
http://www.xxx.dk/gfx/klasse.gif' alt='" & a & "' />"
Case "Klasse-midtbane"
Return "<img src='
http://www.xxx.dk/gfx/klasse.gif' alt='" & a & "' />"
Case "Klasse-angreb"
Return "<img src='
http://www.xxx.dk/gfx/klasse.gif' alt='" & a & "' />"
Case "Verdensklasse-keeper"
Return "<img src='
http://www.xxx.dk/gfx/verdensklasse.gif' alt='" & a & "' />"
Case "Verdensklasse-forsvar"
Return "<img src='
http://www.xxx.dk/gfx/verdensklasse.gif' alt='" & a & "' />"
Case "Verdensklasse-midtbane"
Return "<img src='
http://www.xxx.dk/gfx/verdensklasse.gif' alt='" & a & "' />"
Case "Verdensklasse-angreb"
Return "<img src='
http://www.xxx.dk/gfx/verdensklasse.gif' alt='" & a & "' />"
End select
end function
end Class
Her er så mine datagrids:
<asp:DataGrid HorizontalAlign="Center" ID="dgKlub" BorderColor="#cccccc" BorderStyle="Solid" BorderWidth="1px" BackColor="#dedede" Font-Name="Verdana" ShowHeader="false" ShowFooter="false" GridLines="None" AutoGenerateColumns="false" runat="server">
<columns>
<asp:TemplateColumn>
<itemtemplate>
<table style="font-size:10px;" width="400" cellpadding="0" cellspacing="0">
<tr>
<td width="200" height="22" style="font-weight:bold;">Klubnavn:</td>
<td><%# container.dataitem("klubnavn") %> (ID: <%# container.dataitem("klub_id") %>)</td>
</tr>
<tr>
<td height="22" style="font-weight:bold;">Stadion:</td>
<td><%# container.dataitem("stadionnavn") %> (<%# container.dataitem("stadionkap") %> pladser)</td>
</tr>
<tr>
<td height="22" style="font-weight:bold;">Hold farver:</td>
<td>
<table width="40" height="20" cellpadding="0" cellspacing="0">
<tr>
<td bgcolor="<%# container.dataitem("color1") %>"></td>
<td bgcolor="<%# container.dataitem("color2") %>"></td>
</tr>
</table>
</td>
</tr>
<tr>
<td height="22" style="font-weight:bold;">Antal spillere: </td>
<td><%=antalspillere %></td>
</tr>
<tr>
<td height="22" style="font-weight:bold;">Max indtægt om dagen:</td>
<td><%# maxindtaegt(container.dataitem("billetpris"), container.dataitem("stadionkap"), 3) %> (Billetpris: <%# container.dataitem("billetpris") %>)</td>
</tr>
</table>
</itemtemplate>
</asp:TemplateColumn>
</columns>
</asp:DataGrid>
<asp:DataGrid ID="dgtest" HeaderStyle-BackColor="#CCCCCC" CssClass="dgtest" ShowHeader="true" ShowFooter="true" GridLines="none" AutoGenerateColumns="false" HorizontalAlign="Center" AllowSorting="true" OnSortCommand="sortering" runat="server">
<columns>
<asp:TemplateColumn>
<headertemplate>
<table width="100%" cellpadding="2" cellspacing="0">
<tr class="header">
<td width="170">Navn <asp:imagebutton ID="ibtnnavn" CommandName="sort" CommandArgument="navn ASC" ImageUrl="billeder/down.gif" runat="server" /><asp:imagebutton ID="ibtnnavnup" CommandName="sort" CommandArgument="navn DESC" ImageUrl="billeder/up.gif" runat="server" /></td>
<td width="70">Værdi <asp:LinkButton ID="lnkvaerdi" CommandName="sort" CommandArgument="vaerdi" Text="Værdi" runat="server" /></td>
<td width="40">Alder <asp:LinkButton ID="lnkalder" CommandName="sort" CommandArgument="alder" Text="Alder" runat="server" /></td>
<td width="50">Løn <asp:LinkButton ID="lnklon" CommandName="sort" CommandArgument="lon" Text="Løn" runat="server" /></td>
<td width="70">Position <asp:LinkButton ID="lnkposition" CommandName="sort" CommandArgument="position" Text="Position" runat="server" /></td>
<td width="60">Ben <asp:LinkButton ID="lnkben" CommandName="sort" CommandArgument="ben" Text="Ben" runat="server" /></td>
<td width="50">Teknik <asp:LinkButton ID="lnkteknik" CommandName="sort" CommandArgument="teknik" Text="Teknik" runat="server" /></td>
<td width="50">Mental <asp:LinkButton ID="lnkmental" CommandName="sort" CommandArgument="mental" Text="Mental" runat="server" /></td>
<td width="50">Fysik <asp:LinkButton ID="lnkfysik" CommandName="sort" CommandArgument="fysik" Text="Fysik" runat="server" /></td>
<td width="50">Stats <asp:LinkButton ID="lnkstats" CommandName="sort" CommandArgument="stats" Text="Stats" runat="server" /></td>
<td width="170">Kontrakt <asp:LinkButton ID="lnkkontrakt" CommandName="sort" CommandArgument="kontraktudloeb" Text="Kontrakt" runat="server" /></td>
</tr>
</headertemplate>
<itemtemplate>
<tr class="item">
<td><%# container.dataitem("navn") %> <%# Udmaerk(container.dataitem("udmaerkelse")) %></td>
<td><%# container.dataitem("vaerdi") %></td>
<td><%# container.dataitem("alder") %></td>
<td><%# container.dataitem("lon") %></td>
<td><%# container.dataitem("position") %></td>
<td><%# container.dataitem("ben") %></td>
<td><%# Skill("teknik", container.dataitem("afslutning"), container.dataitem("dribling"), container.dataitem("aflevering"), container.dataitem("takling"), container.dataitem("markering"), container.dataitem("straffespark")) %></td>
<td><%# Skill("mental", container.dataitem("mod"), container.dataitem("kreativitet"), container.dataitem("beslutsomhed"), container.dataitem("indflydelse"), container.dataitem("kampaand"), container.dataitem("udenbold")) %></td>
<td><%# Skill("fysik", container.dataitem("acceleration"), container.dataitem("balance"), container.dataitem("kondition"), container.dataitem("hop"), container.dataitem("styrke"), container.dataitem("udholdenhed")) %></td>
<td><%# Samletskill(container.dataitem("afslutning"), container.dataitem("dribling"), container.dataitem("aflevering"), container.dataitem("takling"), container.dataitem("markering"), container.dataitem("straffespark"), container.dataitem("mod"), container.dataitem("kreativitet"), container.dataitem("beslutsomhed"), container.dataitem("indflydelse"), container.dataitem("kampaand"), container.dataitem("udenbold"), container.dataitem("acceleration"), container.dataitem("balance"), container.dataitem("kondition"), container.dataitem("hop"), container.dataitem("styrke"), container.dataitem("udholdenhed")) %></td>
<td><%# formater(Container.DataItem("kontraktudloeb")) %></td>
</tr>
</itemtemplate>
<footertemplate>
</table>
</footertemplate>
</asp:TemplateColumn>
</columns>
</asp:DataGrid>
<asp:DataGrid ID="dgtest2" AutoGenerateColumns="true" runat="server" />