Login Register
domenica 1 agosto 2010
 
Forums
I Forum di WPF Tips & Tricks
Panel in sola lettura
Last Post 02 mar 2010 09:39 by Junior. 2 Replies.
Printer Friendly
Sort:
PrevPrev NextNext
You are not authorized to post a reply.
Author Messages
Junior
New Member
New Member
Posts:3
Avatar

--
28 feb 2010 02:45  
Ciao a tutti,
ho una domanda:

è possibile impostare un intero pannello in sola lettura in modo che anche il contenuto sia in sola lettura?

Il problema è questo: su una maschera ho dei controlli (TextBox, Combo, DatePicker) raggruppati in alcuni expander, che in base al profilo dell'utente devono essere editabili o meno.
I controlli sono raggruppati in modo che un profilo possa editare tutti i controlli di un expander, quindi sarebbo molto comodo poter rendere in sola lettura l'expander o un intero pannello (stackpanel, grid, ...).

Vorrei evitare di usare la proprietà IsEnabled perchè non consente il copia/incolla.

Grazie!
Roberto
mirkomassi
New Member
New Member
Posts:6
Avatar

--
01 mar 2010 07:49  
Ciao

io creo una griglia dinamicamente a run-time quindi non so a priori quanti TextBox contiene,
per renderli tutti ReadOnly estraggo tutti i DependencyObject della griglia e se sono TextBox setto la proprietà IsReadOnly dei TextBox a true, vedi codice:


Grid dtg = LogicalTreeHelper.FindLogicalNode(this, "detailsGrid") as Grid;
DependencyObject obj = (DependencyObject)dtg;
for (int i = 0; i < VisualTreeHelper.GetChildrenCount(obj); i++)
{
DependencyObject child = VisualTreeHelper.GetChild(obj, i);
if (child != null && child is TextBox)
{
(child as TextBox).IsReadOnly = true;
}
}


spero di esserti di aiuto!
Junior
New Member
New Member
Posts:3
Avatar

--
02 mar 2010 09:39  
Si, grazie per la dritta e per il codice.
Lo adatto anche agli altri controlli e poi posto il risultato.

Tnx!
Roberto
You are not authorized to post a reply.

Active Forums 4.2
  
 
© 2009-2010 WPF Tips&Tricks Team - Visual Basic Tips&Tricks Network