Problema bottoni "dinamici"

venerdì 17 luglio 2009 - 00.08

HavanaMan Profilo | Junior Member

Ciao, ho cercato e ricercato ma non ho trovato nulla

ho questo codice

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

praticamente va a leggere la tabella moduli, da li fa una query sulla permission e a questo punto vorrei che dinamicamente andasse a dare visible true/false al bottone.

Nella tabella module ho un campo module_button con all'interno per esempio "bImpostazioni"

vorrei che nel ciclo in questo punto

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

invece che usare " bImpostazioni.Visible" vorrei usare myReader2.Item("module_button") cosi da andare dinamicamente ad assegnare visible true/false a tutti i bottoni con una query.

è una ca**ata? qualche consiglio su come fare?

ps: per il fatto delle due connessioni uguali è giusto? si può fare in altro modo?

grazie in anticipo
Luca

Jeremy Profilo | Guru

Ciao Luca.
Potresti modificare il tuo codice così:

dim Pr as boolean=Boolean.Parse(myReader2.Item("permission_read") .tostring) dim Pi as boolean=Boolean.Parse(myReader2.Item("permission_insert") .tostring) dim Pu as boolean=Boolean.Parse(myReader2.Item("permission_update") .tostring) dim Pd as boolean=Boolean.Parse(myReader2.Item("permission_delete") .tostring) bImpostazioni.Visible = Pr or Pi or Pu or Pd

Facci sapere....
Ciao

HavanaMan Profilo | Junior Member

Ciao, prima di tutto grazie...

poi:

mi restituisce questo errore: Stringa non riconosciuta come valore Boolean valido.

Rimane il fatto che la parte che io non voglio avere è questa bImpostazioni.Visible, o meglio non voglio dover scrivere a manina il singolo bottone, in questo caso bImpostazioni...

mi ritroverei a scrivere:

bottone1.visible = true
bottone2.visible = true
bottone3.visible = false
bottone4.visible = true
bottone5.visible = false

ok dinamicamente a differenza dei permessi, ma non è quello che voglio, io vorrei una sorta di ciclo che legga il nome del bottone da module_button e usi:

myReader2.Item("permission_read").visible = true

però così non funziona...

ciao
Luca

Jeremy Profilo | Guru

Ciao Luca.
L'errore che riceve dipende dal fatto che io, forse stupidamente, pensavo che nel campo del Db ci fosse scritto True o False.
Ad ogni modo, non capisco molto bene quello che vuoi fare, ma puoi iterare la collection di controlli presenti sul form decidere se visualizzarli o meno in funzione di certe condizioni.
Mi spiego meglio, supponiamo che tu dia al tuo bottone il nome del campo dal quale deve recuperare la condizione di visibile o meno....potresti fare qualcosa del genere:

for each Cnt as control in Me.controls if type of cnt is button then if myReader2.Item(cnt.name) = true then cnt.visibile=true else cnt.visible=false end if end if next

ma potresti anche appoggiarti alla proprietà Tag del button ..... insomma, ci sarebbero diverse strade.

facci sapere....
Ciao
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5