动态生成tablecell

 

Partial   Class _Default
    
Inherits System.Web.UI.Page
    
Dim arr15min() As String = New String() {"8:00AM""8:15AM""8:30AM""8:45AM""9:00AM""9:15AM""9:30AM", _
                                               
"9:45AM""10:00AM""10:15AM""10:30AM""10:45AM""11:00AM""11:15AM", _
                                               
"11:30AM""11:45AM""12:00AM""12:15AM""12:30AM""12:45AM", _
                                                
"1:00PM""1:15PM""1:30PM""1:45PM""2:00PM""2:15PM""2:30PM""2:45PM""3:00PM", _
                                                
"3:15PM""3:30PM""3:45PM""4:00PM""4:15PM""4:30PM""4:45PM""5:00PM""5:15PM", _
                                                 
"5:30PM""5:45PM""6:00PM""6:15PM""6:30PM""6:45PM""7:00PM""7:15PM""7:30PM"}
    
Dim arr30min() As String = New String() {"8:00AM""8:30AM""9:00AM""9:30AM""10:00AM""10:30AM""11:00AM""11:30AM""12:00AM""12:30AM", _
                                             
"1:00PM""1:30PM""2:00PM""2:30PM""3:00PM""3:30PM""4:00PM""4:30PM""5:00PM""5:30PM", _
                                             
"6:00PM""6:30PM""7:00PM""7:30PM"}
    
Dim arr45min() As String = New String() {"8:00AM""8:45AM""9:30AM""10:15AM""11:00AM""11:45AM""12:30AM""1:15PM""2:00PM", _
                                            
"2:45PM""3:30PM""4:15PM""5:00PM""5:45PM""6:30PM""7:15PM""8:00PM"}

    
Protected Sub Page_Load(ByVal sender As ObjectByVal e As System.EventArgs) Handles Me.Load
        
' If Not Me.IsPostBack Then
        createBookingTable(arr30min, 4, DateTime.Now)
        
'End If

    
End Sub

    
Protected Sub createBookingTable(ByVal array As String(), ByVal maxNoOfPerSolt As IntegerByVal currentDate As DateTime)

        
Dim tabHead As TableRow = New TableRow()
        
'Dim tabList As TableRow = New TableRow()

        tabHead.Width 
= 100%
        
Dim resource As Integer = 5
        
For i As Integer = 0 To resource
            
Dim tabHeadCell As TableCell = New TableCell()
            tabHeadCell.Height 
= 20
            tabHeadCell.BorderWidth 
= 1
            tabHeadCell.Width 
= 100%

            
'tabHeadCell.BackColor = Drawing.Color.Blue
            tabHeadCell.HorizontalAlign = HorizontalAlign.Center
            
Select Case i
                
Case 0
                    tabHeadCell.Text 
= "Time"

                
Case Else
                    tabHeadCell.Text 
= i.ToString()
            
End Select
            tabHead.Cells.Add(tabHeadCell)
        
Next
        tabShecule.Rows.Add(tabHead)
        
For j As Integer = 0 To array.Length - 1
            
Dim tabList As TableRow = New TableRow()
            tabList.BorderWidth 
= 1
            tabList.Width 
= 100%
            
For h As Integer = 0 To resource
                
Select Case h
                    
Case 0
                        
Dim cellList As TableCell = New TableCell()
                        cellList.Width 
= 100%
                        cellList.BorderWidth 
= 1
                        cellList.Text 
= array(j)     'set startTime "8:00AM"
                        tabList.Cells.Add(cellList)
                    
Case Else
                        
Dim cellList2 As TableCell = New TableCell() ' in this tableCell ,add table
                        cellList2.Width = 100%
                        cellList2.BorderWidth 
= 1
                        cellList2.ID 
= "td_" & j & "_" & h
                        cellList2.Controls.Add(GetTablePerSolt(maxNoOfPerSolt, array(j), h))
                       
                        tabList.Cells.Add(cellList2)
                
End Select
            
Next
            tabShecule.Rows.Add(tabList)
        
Next


        div.Controls.Add(tabShecule)

    
End Sub

    
' return one table control
    Protected Function GetTablePerSolt(ByVal perSolt As IntegerByVal soltTime As StringByVal h As StringAs Table
        
Dim tablePerSolt As Table = New Table()
        tablePerSolt.Width 
= 100%
        tablePerSolt.BorderWidth 
= 1





        
Dim columnNum As Integer = (perSolt / 3)
        
Dim otherNum As Integer = (perSolt Mod 3)
        
'For k As Integer = 1 To perSolt
        '    If (k > 3) Then
        '        Dim perCell As TableCell = New TableCell()
        '        perCell.Text = k.ToString()
        '        perRow.Cells.Add(perCell)
        '        tablePerSolt.Rows.Add(perRow)
        '    Else
        '        Dim perCell As TableCell = New TableCell()
        '        perCell.Text = k.ToString()
        '        perFirstRow.Cells.Add(perCell)
        '        tablePerSolt.Rows.Add(perFirstRow)
        '    End If
        'Next
        Dim a As Integer = 1
        
For k As Integer = 0 To perSolt / 3
            Response.Write(k.ToString())
            
Dim perRow As TableRow = New TableRow()
            
While a <= perSolt
                
Dim perCell As TableCell = New TableCell()
                
If (a Mod 3 = 0Then
                    perCell.Text 
= a
                    perRow.Cells.Add(perCell)
                    a 
+= 1
                    tablePerSolt.Rows.Add(perRow)
                    
Exit While
                
Else
                    perCell.Text 
= a
                    perRow.Cells.Add(perCell)
                    a 
+= 1
                    tablePerSolt.Rows.Add(perRow)
                
End If
            
End While

        
Next


        
'For j As Integer = 1 To 2
        '    Dim tabrow As TableRow = New TableRow()
        '    tabrow.Width = 100%
        '    For i As Integer = 1 To columnNum
        '        Dim cellPerSolt As TableCell = New TableCell()
        '        cellPerSolt.Text = j & ":" & i
        '        cellPerSolt.BorderWidth = 1
        '        cellPerSolt.ID = soltTime & ":" & j & ":" & i & ":" & h
        '        cellPerSolt.Width = 100%
        '        cellPerSolt.Attributes.Add("onmouseover", "this.style.cursor='hand'; this.bgColor='#DEDFF7'")
        '        cellPerSolt.Attributes.Add("onmouseout", "this.bgColor='';")
        '        ' Dim lnkButton As LinkButton = New LinkButton()
        '        'lnkButton.CommandName = "lnkbtn_" & j & "_" & i
        '        'lnkButton.CommandArgument = j.ToString() & i.ToString()
        '        'lnkButton.Text = j.ToString() & i.ToString()

        
'        ' cellPerSolt.Controls.Add(lnkButton)

        
'        cellPerSolt.Attributes.Add("onclick", "javascript:alert(this.id);")
        '        tabrow.Cells.Add(cellPerSolt)
        '    Next
        '    tablePerSolt.Rows.Add(tabrow)
        'Next
        Return tablePerSolt
    
End Function

生成类式

Time123
8:00AM
123
456
  
9:30Am   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值