Jag har gjort en dagbok och nu har jag ett litet problem. Det är hur jag ska lista dagboksinläggen. Det kommer vara en traditionell listning, alltså det nyaste inlägget överst. Men jag vill att det ska vara så att varje månad är för sig. Jag har gjort så här när jag skriver ut ett spelprogram. Den skriver ut datumet och sen alla matcher som är det datumet. Tackar, testade det, men jag fick inte till day-funktionen. Left är en VB-grej och finns inte i C#. Är det samma sak med viewstate? <code> Okej, jag får sånt här felmeddelande: Först och främst är ju C# case sensitive så jag tror du ska skriva ViewState istället för viewstate. Sen ska du använda [] istället för (), så det borde bli så här: Tack fungerade.Lista dagboksinlägg
ex.
Januari
5/1 2005
4/1 2005
December
29/12 2004
etc.
Jag vet inte riktigt hur jag ska få till det, jag har tänkt på att man har två stycken repeaters en för månaderna och en för inläggen, men hur ska man göra för att binda ihop dem? Eller det kanske finns något smidigare och bättre sätt?Sv: Lista dagboksinlägg
<code>
<asp:repeater id="rpGames" runat="server" enableviewstate="False">
<headertemplate>
<table cellspacing="2" cellpadding="0" border="0" bgcolor='<%# bgColor() %>'>
</headertemplate>
<itemtemplate>
<tr>
<td colspan="8">
<asp:label id="lblDate" runat="server" font-size="18px" visible='<%# day(DataBinder.Eval(Container.DataItem,"GameDate","{0:yyyy-MM-dd}")) %>'><%# DataBinder.Eval(Container.DataItem,"GameDate","{0:yyyy-MM-dd}") %></asp:label>
</td>
</tr>
<tr>
<td width="30"><%# DataBinder.Eval(Container.DataItem,"GameNumber") %></td>
<td width="150"><%# DataBinder.Eval(Container.DataItem,"Group") %></td>
<td width="40"><%# DataBinder.Eval(Container.DataItem,"GameTime") %></td>
<td width="180"><%# team(DataBinder.Eval(Container.DataItem,"homeTeam"),DataBinder.Eval(Container.DataItem,"team1")) %></td>
<td width="10">-</td>
<td width="180"><%# team(DataBinder.Eval(Container.DataItem,"awayTeam"),DataBinder.Eval(Container.DataItem,"team2")) %></td>
<td width="40"><%# GameEnded(DataBinder.Eval(Container.DataItem,"GameEnded"),DataBinder.Eval(Container.DataItem,"period"),DataBinder.Eval(Container.DataItem,"HomeScore"),DataBinder.Eval(Container.DataItem,"awayScore")) %></td>
<td width="60"><asp:hyperlink id="hplLive" navigateurl='<%# "javascript:popGame(" & DataBinder.Eval(Container.DataItem,"GameID") &")" %>' runat="server" visible='<%# showLiveLink(DataBinder.Eval(Container.DataItem,"period"),DataBinder.Eval(Container.DataItem,"gameEnded")) %>'>Live</asp:hyperlink></td>
</tr>
</itemtemplate>
<footertemplate>
</table>
</footertemplate>
</asp:repeater>
</code>
och funktionen day
<code>
Protected Function day(ByVal _datum As String) As Boolean
Dim _vis As String
If Left(_datum, 10) = viewstate("datum") Then
Return False
End If
viewstate("datum") = Left(_datum, 10)
Return True
End Function
</code>
Finns säkert någon snyggare lösning men det här fungerarSv:Lista dagboksinlägg
Jag använder mig av C# jag kanske har översatt det fel, någon som ser nått galet?
<code>
protected bool day( string _datum )
{
string _vis;
if ( Left( _datum, 10 ) == viewstate( "datum" ) )
{
return false;
}
viewstate( "datum" ) = Left( _datum, 10 );
return true;
}
</code>
felmeddelandet jag får när jag ska kompilera projektet är The name 'Left' does not exist in the class or namespace 'vasaloppet.uc.dagbok' och The name 'viewstate' does not exist in the class or namespace 'vasaloppet.uc.dagbok
någon som vet hur man kan fixa det? Sv: Lista dagboksinlägg
Du ska använda Substring istället
_datum.Substring(0, 10);
/AndrecSv:Lista dagboksinlägg
Så det ska se ut så här?
<code>
protected bool day( string _datum )
{
string _vis;
if ( _datum.Substring(0, 10) )
{
return false;
}
_datum.Substring(0, 10);
return true;
}
</code>Sv: Lista dagboksinlägg
protected bool day( string _datum )
{
string _vis;
if ( _datum.Substring(0, 10) == viewstate["datum"])
{
return false;
}
viewstate["datum"] = _datum.Substring(0, 10);
return true;
}
</code>
Du gör nog bättre/lättare i att skriva en egen kod.
/AndrecSv:Lista dagboksinlägg
The name 'viewstate' does not exist in the class or namespace 'vasaloppet.uc.dagbok'
Måste man importa något namespace? Sv:Lista dagboksinlägg
ViewState["datum"]
Längesen jag programmerade C# men jag tror det ska vara så här.Sv: Lista dagboksinlägg
Men det blir inte som jag hade tänkt mig.
Det blir så här:
2005-02-01
2005-02-01
2005-02-01
2005-02-01
2005-01-24
2005-01-24
Alltså en överrubrik för varje inlägg.