SORU
16 HAZİRAN 2009, Salı


Kod ayarı kenar Boşluğu Özellikleri

MyControl.Margin.Left = 10;

Hata:

Döndüremez değiştirin 'Sistemi.Windows.FrameworkElement.Marj' bir değişken değildir çünkü

CEVAP
16 HAZİRAN 2009, Salı


Sorun Margin bir özelliği olduğunu ve onun türü (Thickness) değer türüdür. Bu sen oluyorsun özelliği bir erişim anlamına gelirkopyaladeğeri geri.

Sana rağmenolabilirbelirli bir değer için Thickness.Left özelliğinin değeri (... değişken değer türleri yok grr) değiştirmek, kenar değiştirmez.

Bunun yerine, yeni bir değer Margin özellik ayarlamak gerekir. Örneğin (tesadüfen Marc yazdığı gibi aynı kod):

Thickness margin = MyControl.Margin;
margin.Left = 10;
MyControl.Margin = margin;

Bir not için kitaplık tasarımı, istediğim kesinlikle tercih ederseniz Thickness değişmez, ama yöntemleri, getirilen yeni değeri olan orijinal mi orijinal, ama bir kısmı değiştirildi. Sonra yazabilirsiniz:

MyControl.Margin = MyControl.Margin.WithLeft(10);

Değişken değer türleri tuhaf davranışları hakkında endişelenmenize gerek yok, güzel ve okunabilir bir ifade...

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • André Frizzo

    André Frizz

    16 Aralık 2006
  • ipsy

    ipsy

    1 EKİM 2012
  • khloe brooks

    khloe brooks

    25 Temmuz 2011