2012-11-26 98 views
1

嘗試使用(日曆預訂系統)中的複選框列表。如果數據庫中有任何數據與日期和小時相對應,則應該禁用該複選框併爲紅色。這一切都完美的工作是代碼。用vb.net複選框列表保持禁用

OK我找到了一種方法如何清除複選框

Dim i As Integer 
    Dim chboxItem As ListItem 
    For Each chboxItem In CheckBoxListMon.Items 
     i += 1 
     If (i Mod 1 = 0) Then 
      chboxItem.Enabled = True 
     End If 
    Next 



Protected Sub Page_LoadComplete(sender As Object, e As EventArgs) Handles Me.LoadComplete 

    Try 
     strQuery = "SELECT BookingDate, checkBoxItem, BookRegUserID,Booked FROM bookings INNER JOIN checkboxitems where checkBoxItem = BookingTime" 

     MySQLCmd = New MySqlCommand(strQuery, dbCon) 

     dbCon.Open() 

     DR = MySQLCmd.ExecuteReader 

     While DR.Read 

      bookDate = DR.Item("BookingDate") 
      bookTime = DR.Item("checkBoxItem") 
      bookRegID = DR.Item("BookRegUserID") 
      booked = DR.Item("Booked") 

      Dim test As String = bookTime.ToString() 

      Select Case True 

       Case bookDate = lblMonday.Text And CheckBoxListMon.Items.FindByValue(test) IsNot Nothing 

        CheckBoxListMon.Items.FindByValue(bookTime).Enabled = False 
        CheckBoxListMon.Items.FindByValue(bookTime).Attributes.Add("Style", "color: red;") 

      End Select 
     End While 
     DR.Close() 
     dbCon.Close() 
    Catch ex As Exception 

    End Try 

End Sub 

當網頁加載它不會改變從數據庫中的。但是當我重新加載頁面時,它實際上會工作得很完美。

我在哪裏可以把檢查只是爲了確保它們已經在內存中。

任何幫助將不勝感激。謝謝大家。

切赫

回答

0

需要刷新數據,因爲使用的是相同的控制每個星期選擇了一個星期的時候。您應該可以通過您使用的任何控件來切換整個星期。

Page_LoadComplete只能在每次頁面完成加載時觸發,這就是爲什麼您的控件在轉到另一頁時返回時會工作。