Datagrid

jma

Mitglied
Moin,
bin grad dabei für eine Raumverwaltung entsprechende Kalenderansichten als ASP.NET Webanwendung zu erstellen.
Verwende c# , das ganze als codebehind, VS2003 Framework 1.1x

Nun würde ich gerne für die Tagesansicht ein DataGrid einsetzen um die im Anhang befindliche Ansicht zu realisieren.
Habs soweit hinbekommen, das ein Datagrid mit n Spalten für n Räume und mit Uhrzeit Zeilen von 7:00 bis 22:00 Uhr dargestellt wird.
Allerdings arbeitet das ganze Zeilenweise, wie bekomme ich das hin, das entweder Zeilen miteinander verbunden werden, welche für den gleichen Termin stehen oder ich Blöcke kann.
Dazu kommt das hinter jedem Eintrag eine DatensatzID abgelegt werden muss, um später an die Daten zu kommen.

Hat jemand sich schonmal jemand mit einer entsprechenden Kalenderdarstellung beschäftigt?

Hier mal mein Quellcode für die momentane Realisierung

Code:
try
			{      
				DataTable dt = new DataTable();
				DataSet ds = new DataSet();
				bookingsystem.Hilfsklassen.CFillCombo data;
				
				int i,j;
				DataColumn dc1 = new DataColumn("Time", System.Type.GetType("System.String"));
				dt.Columns.Add(dc1);
				for(i=0;i<rl.Count;i++) 
				{
					data = (bookingsystem.Hilfsklassen.CFillCombo) rl[i];
					DataColumn dc2 = new DataColumn(data.Bezeichnung, System.Type.GetType("System.String"));
					dt.Columns.Add(dc2);			
				}

				db.sql_connect();
				if (db.sql_status() == ConnectionState.Open) 
				{					
					string date = string.Format("{0:yyyy}-{0:MM}-{0:dd}",DateTime.Parse(TextBox1.Text));
					for(i=7;i<23;i++) 
					{
						DataRow dr = dt.NewRow();
						dr[0] = i.ToString()+":00";
						
						for(j=1;j<rl.Count+1;j++) 
						{
							string entry = "";
							string time =  i.ToString()+":00:00";
							data = (bookingsystem.Hilfsklassen.CFillCombo) rl[j-1];
							string strSql = "Select a.*,b.*,c.status As rs from tbl_book_date As a, tbl_bookobject As b, tbl_book_room as c where a.bookNo = b.id and b.id = c.bookNo and a.von_Datum = '"+date+ "' and c.roomNo = "+data.Id+" and a.von_Uhrzeit <= '"+time+"' and a.bis_Uhrzeit >= '"+time+"';";
							MySqlDataReader reader = db.sql_select(strSql);

							while (reader.Read())
							{
								entry += DateTime.Parse(reader["von_Uhrzeit"].ToString()).ToShortTimeString();
								entry += " bis ";
								entry += DateTime.Parse(reader["bis_Uhrzeit"].ToString()).ToShortTimeString(); 
								entry += " : ";
								entry += reader["r_whyroom"].ToString()+"\r\n";
							}
							if (reader != null)	reader.Close(); 
							dr[j] = entry;
						}
						dt.Rows.Add(dr);
					}
				}
				db.sql_disconnect();

				ds.Tables.Add(dt);
				DataGrid1.DataSource = dt;
				DataGrid1.DataBind();		
			}
			catch (Exception ex)
			{
			}
 

Anhänge

  • kalender.JPG
    kalender.JPG
    25,7 KB · Aufrufe: 79

Neue Beiträge