LTRB to krótki zapis, który można łatwo zapamiętać.
Sai
44
Uwaga: jest to inna kolejność niż kolejność html w css, czyli Góra, Prawo, Dół, Lewo.
Ruskin
7
Czy ktoś ma jakiś wgląd w to, dlaczego zdecydował się na coś innego niż CSS?
Charles Clayton,
5
@crclayton - Jak napisałem; kolejność jest taka sama jak w WinForms. WinForms jest naturalnym poprzednikiem WPF, więc oprogramowanie (programiści) przeprowadziliby aktualizację z WinForms do WPF.
Erno,
30
Co powiesz na. WPF zaczyna się na Zachodzie. Netscape zaczyna się na północy? I oczywiście w obu przypadkach zgodnie z ruchem wskazówek zegara.
Martin Capodici,
33
Istnieją trzy unikalne sytuacje:
4 liczby , np Margin="a,b,c,d".
2 liczby , np Margin="a,b".
1 liczba , np Margin="a".
4 liczby
Jeśli istnieją 4 numery , to jego left, top, right, bottom(a ruchu wskazówek zegara, zaczynając od koła środkowego lewego marginesu). Pierwsza liczba to zawsze „zachód”, jak „WPF”:
<objectMargin="left,top,right,bottom"/>
Przykład: jeśli Margin="10,20,30,40"go użyjemy , wygeneruje:
2 liczby
Jeśli są 2 liczby , pierwsza to grubość lewego i prawego marginesu, druga to grubość górnego i dolnego marginesu. Pierwsza liczba to zawsze „zachód”, jak „WPF”:
<objectMargin="a,b"/> // Equivalent to Margin="a,b,a,b".
Przykład: jeśli użyjemy Margin="10,30", lewy i prawy margines to 10, a górny i dolny to 30.
1 liczba
Jeśli jest 1 liczba , liczba ta jest powtarzana (jest to zasadniczo grubość ramki).
<objectMargin="a"/> // Equivalent to Margin="a,a,a,a".
Przykład: jeśli Margin="20"go użyjemy , wygeneruje:
Aktualizacja 2020-05-27
Przez ostatnie 5 lat pracowałem nad aplikacją WPF na dużą skalę z ponad 100 ekranami. Część zespołu 5 deweloperów WPF / C # / Java. Ostatecznie zdecydowaliśmy się na użycie 1 liczby (dla grubości obramowania) lub 4 liczb. Nigdy nie używamy 2. Jest spójny i wydaje się dobrym sposobem na zmniejszenie obciążenia poznawczego podczas rozwoju.
Zasada:
Wszystkie numery szerokości zaczynają się po lewej stronie („Zachód” jak „WPF”) i idą zgodnie z ruchem wskazówek zegara (jeśli dwie liczby idą tylko dwa razy zgodnie z ruchem wskazówek zegara, a następnie odbijają pozostałe).
„Jeśli są 2 liczby, pierwsza to grubość lewego i prawego marginesu”. Ale w tym przykładzie pierwsza liczba to 30, i kończy się na górnym i dolnym marginesie.
Peter Bruins
21
Tylko dlatego, że komentarz @MartinCapodici jest niesamowity, piszę tutaj jako odpowiedź na widoczność.
Wszystko zgodnie z ruchem wskazówek zegara:
W PF start W est (lewy-> górny-> prawy-> dolny)
N etscape (tj. CSS) start N orth (góra-> prawo-> dół-> lewo)
W drugim przykładzie „lewy, górny”, jest faktycznie powtórzony: pierwsza liczba odnosi się do lewej i prawej, druga do górnej i dolnej, patrz moja odpowiedź poniżej.
@amit jha
podanego linku , spójrz na sekcję zatytułowanąXAML Values
dla marginesu w tym linku.Odpowiedzi:
Możliwe jest również określenie tylko dwóch takich rozmiarów:
Wreszcie możesz określić jeden rozmiar:
Kolejność jest taka sama jak w WinForms.
źródło
Istnieją trzy unikalne sytuacje:
Margin="a,b,c,d"
.Margin="a,b"
.Margin="a"
.4 liczby
Jeśli istnieją 4 numery , to jego
left
,top
,right
,bottom
(a ruchu wskazówek zegara, zaczynając od koła środkowego lewego marginesu). Pierwsza liczba to zawsze „zachód”, jak „WPF”:Przykład: jeśli
Margin="10,20,30,40"
go użyjemy , wygeneruje:2 liczby
Jeśli są 2 liczby , pierwsza to grubość lewego i prawego marginesu, druga to grubość górnego i dolnego marginesu. Pierwsza liczba to zawsze „zachód”, jak „WPF”:
Przykład: jeśli użyjemy
Margin="10,30"
, lewy i prawy margines to 10, a górny i dolny to 30.1 liczba
Jeśli jest 1 liczba , liczba ta jest powtarzana (jest to zasadniczo grubość ramki).
Przykład: jeśli
Margin="20"
go użyjemy , wygeneruje:Aktualizacja 2020-05-27
Przez ostatnie 5 lat pracowałem nad aplikacją WPF na dużą skalę z ponad 100 ekranami. Część zespołu 5 deweloperów WPF / C # / Java. Ostatecznie zdecydowaliśmy się na użycie 1 liczby (dla grubości obramowania) lub 4 liczb. Nigdy nie używamy 2. Jest spójny i wydaje się dobrym sposobem na zmniejszenie obciążenia poznawczego podczas rozwoju.
Zasada:
źródło
Tylko dlatego, że komentarz @MartinCapodici jest niesamowity, piszę tutaj jako odpowiedź na widoczność.
Wszystko zgodnie z ruchem wskazówek zegara:
źródło
Zobacz tutaj: http://msdn.microsoft.com/en-us/library/system.windows.frameworkelement.margin.aspx
źródło