una tag significa que propiedades propiedad informatica entre diferencia descriptores declaracion clase campo autoimplementadas agregar acceso c# wpf code-behind attached-properties

c# - tag - que significa propiedades en informatica



¿Cómo acceder a una propiedad adjunta en el código? (3)

Como estamos cambiando la propiedad del ''objeto'', sería mejor usar el método sugerido por JaredPar:

theObject.SetValue(Canvas.LeftProperty, 50d);

Tengo un rectángulo en mi XAML y quiero cambiar su propiedad Canvas.Left en el código detrás:

<UserControl x:Class="Second90.Page" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Width="400" Height="300" KeyDown="txt_KeyDown"> <Canvas> <Rectangle Name="theObject" Canvas.Top="20" Canvas.Left="20" Width="10" Height="10" Fill="Gray"/> </Canvas> </UserControl>

Pero esto no funciona:

private void txt_KeyDown(object sender, KeyEventArgs e) { theObject.Canvas.Left = 50; }

¿Alguien sabe cuál es la sintaxis para hacer esto?


Prueba esto

theObject.SetValue(Canvas.LeftProperty, 50d);

Hay un grupo de métodos en DependencyObject (base de la mayoría de las clases de WPF) que permiten el acceso común a todas las propiedades de dependencia. Son

  • Valor ajustado
  • GetValue
  • ClearValue

Editar Actualizado el conjunto para usar un doble literal ya que el tipo de destino es un doble.


Canvas.SetLeft(theObject, 50)