2010-08-28 7 views
6

C#, ASP.NET, VS08, HTML-Tabelle verwenden.Wie werden Zellen in einer Spalte mithilfe von Code zusammengeführt?

Ich möchte Zellen zusammenführen - rowspan und colspan überspannt es, aber fusioniert es nicht.

Für ein klares Bild,

  • zieht ein HTML-Tabelle Steuerelement auf der Entwurfsansicht
  • die Zellen einer Spalte wählen
  • die rechte Maustaste, ändern, fusioniert

Ich würde programmgesteuert in C# -Codierung auf Knopfdruck machen.

Antwort

10

Es ist nur ein wenig mühsam, dies von Code-Behind zu tun, aber der Prozess ist einfach.

Als Erstes nehme ich an, dass Ihre Tabelle und ihre Elemente mit dem Attribut runat="server" gekennzeichnet sind. Dadurch erhalten Sie Zugriff auf die serverseitige API des Steuerelements.

Angenommen, Sie möchten zwei Zellen in der ersten Zeile zusammenführen. Der Prozess beinhaltet das Festlegen der Spalte einer Zelle und das Entfernen der anderen.

myTable.Rows[0].Cells[i].ColSpan = 2; 
myTable.Rows[0].Cells.RemoveAt(i + 1) 

Es ist ähnlich für rowspan. Hier

myTable.Rows[0].Cells[i].RowSpan = 2; 
myTable.Rows[1].Cells.RemoveAt(i) 

ist ein Beispiel für eine größere Zusammenführung beteiligt sowohl rowspan und colspan:

myTable.Rows[0].Cells[i].ColSpan = 2; 
myTable.Rows[0].Cells[i].RowSpan = 2; 
myTable.Rows[0].Cells.RemoveAt(i + 1) 
myTable.Rows[1].Cells.RemoveAt(i) 
myTable.Rows[1].Cells.RemoveAt(i + 1) 

Beachten Sie, dass, wenn Ihre Tabelle hat bereits Reihe Spannweiten und Zelle umspannt, dass Sie mehr Beinarbeit haben zu tun um zu berechnen, welche Zellen entfernt werden müssen.

Viel Glück!

Verwandte Themen