2009-01-08 17 views

Respuesta

33

para establecer el valor:

textBlock.SetValue(Grid.RowProperty, 3); 

Para restablecer el valor:

textBlock.SetValue(Grid.RowProperty, null); 
+0

Si lo prefiere, puede usar la expresión idiomática: Grid.SetRow (textBlock, 3); Las propiedades adjuntas suelen tener métodos Get y Set (aunque no creo que sea obligatorio, por lo que puede haber excepciones). –

+0

Noté (esto es con SL3 beta) que para cambiar la ubicación de un control secundario, no puede simplemente establecer esta propiedad; necesita quitar el control de la cuadrícula principal, establecer la propiedad como se muestra aquí, y luego vuelve a agregarlo al padre. – Eric

4

No estoy 100% seguro de que esto sea en SilverLight, pero en WPF llama a un método estático (llamado SetX, donde X es la propiedad) sobre el tipo en que está definida la propiedad adjunta y lo pasa en qué control establecer el valor de, y el valor:

Grid.SetRow(MyControl, myRowNumber); 
+0

Genius! ¿El valor también puede ser borrado programáticamente? – Jeremy

+0

No estoy seguro de la parte superior de la cabeza, es posible que pueda anularlo. –

7

En realidad para borrar un valor, debe usar esto:

textBlock.ClearValue(Grid.RowProperty); 
Cuestiones relacionadas