name password
OLI-it Text
EN | DE | ES 8:13 PM
 
Stamm (abstract)
12/3/2000
16.10
HyperLink

 
Antworten von: unixmaster
1/16/2007
0.85

Der Control Code

// der Code vom ascx Control

// ----------------------------

using System.Globalization;
using System.Threading;

public delegate void DayRenderHandler (object sender, DayRenderEventArgs e);

public partial class BelegungsplanControl : System.Web.UI.UserControl
{
public event DayRenderHandler DayRender;

HtmlTable tbl;
HtmlTableRow row;
HtmlTableCell cell;

string[] monate;
string[] tage;

public string Jahr = "2007";

protected void Page_Load(object sender, EventArgs e)
{
monate = DateTimeFormatInfo.CurrentInfo.MonthNames;
tage = DateTimeFormatInfo.CurrentInfo.ShortestDayNames;

tbl = new HtmlTable();
PlaceHolder1.Controls.Add(tbl);

createHeader();

for(int monatIdx = 0; monatIdx < 12; monatIdx++)
{
// neue Zeile für den Monat
row = new HtmlTableRow();
tbl.Rows.Add(row);

// Monatsname
cell = new HtmlTableCell();
cell.InnerHtml = monate[monatIdx];
row.Cells.Add(cell);

// Der erste Tag im Monat
DateTime day = DateTime.Parse(Jahr + "-" +
(monatIdx+1).ToString() + "-1");

// leere Zellen bis zum richtigen Wochentag
for (int leer = 0; leer < (int)day.DayOfWeek; leer++)
{
cell = new HtmlTableCell();
cell.InnerHtml = "-";
row.Cells.Add(cell);
}

// Die Tage des Monats füllen
while (day.Month == (monatIdx + 1))
{
cell = new HtmlTableCell();
cell.InnerHtml = day.Day.ToString();
row.Cells.Add(cell);

// Ereignis auslösen
if (DayRender != null)
{
DayRenderEventArgs drea = new
DayRenderEventArgs(day,cell);
DayRender(this, drea);
}

// nächster Tag
day = day.AddDays(1);
}
}
}

// erstellt die erste Zeile mit den Wochentagsnamen
private void createHeader()
{
row = new HtmlTableRow();
tbl.Rows.Add(row);

// leere Zelle
cell = new HtmlTableCell();
row.Cells.Add(cell);

// 5 Wochen aneinander hängen
for (int i = 0; i < 5; i++)
{
foreach(string tag in tage)
{
cell = new HtmlTableCell();
cell.InnerHtml = tag;
row.Cells.Add(cell);
}
}
}
}


 
Kommentar:

Bewertung
tollrest
2007 test

weitere Hilfe

Antwort mit Bewertung .rdf

Das ist ein Feedback auf die Nachricht.

Wenn Sie eingeloggt sind, können sie eine Bewertung (0 - 100%) abgeben, um die Bezahlung der Antworten zu regeln.

Ausserdem können sie weitere Kommentare (also eine Antwort auf diese Antwort) abgeben.