icosta Posted May 23, 2012 at 09:40 AM Report #457541 Posted May 23, 2012 at 09:40 AM (edited) A cor de fundo das textbox's é seleccionada pelo utilizador, pelo cada uma poderá ter a sua cor. A cor é gravada em bd e preciso que ao iniciar a aplicação as textbox's seja formatadas de acordo com a cor guardada em bd. O código assume a cor e o nome da textbox, mas não consigo aplicar o backcolor. DisconnectFromSql() Dim total As Integer total = 78 For i = 7 To total ConnectToSql() cmd.Connection = conn cmd.CommandText = " select campo, cor from cronograma where campo = '" & "TextBox" & i & "'" 'cmd.CommandText = " select campo, cor from cronograma" Dim lrd As SqlDataReader = cmd.ExecuteReader While lrd.Read 'campo = lrd.GetValue(0) cor = lrd.GetValue(1) campo = "Textbox" & i txt.name = campo With txt .BackColor = Color.FromName(cor) End With End While DisconnectFromSql() Next Edited May 23, 2012 at 09:43 AM by Caça GeSHi
Caça Posted May 23, 2012 at 09:45 AM Report #457542 Posted May 23, 2012 at 09:45 AM Estas a utilizar sempre a mesma textbox (txt).. Pedro Martins Não respondo a duvidas por PM
Fabio92 Posted May 23, 2012 at 09:50 AM Report #457544 Posted May 23, 2012 at 09:50 AM o txt esta dentro do ciclo e assume valores diferentes quando ele e executado...
ribeiro55 Posted May 23, 2012 at 02:05 PM Report #457618 Posted May 23, 2012 at 02:05 PM Não, não assume coisa nenhuma. Não te podes referir a objectos com essa leviandade. Isto não é script. Só estás a alterar o nome e cor de fundo da mesma textbox, tantas vezes quantas iterações fizer o ciclo. No limite, tentas obter a referência para o objecto correcto, a partir do seu nome. Algo como por exemplo: For Each contr As Object In Me.Controls If TypeOf contr Is TextBox Then Dim tmpTx As TextBox = DirectCast(contr, TextBox) If tmpTx.Name = "TextBox" & i.ToString Then tmpTx.BackColor = Color.Red End If End If Next Partindo do início que as TextBox estão todas contidas na form, e que se chamam TextBox + número. Se existirem noutros containers, como panels, terás de iterar todos os controlos à caça das textboxes. Sérgio Ribeiro "Great coders aren't born. They're compiled and released""Expert coders do not need a keyboard. They just throw magnets at the RAM chips"
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now