Замовлення нерухомості в маржі


218

Якщо у мене є такий рядок у XAML:

Storyboard.TargetProperty="Margin" From="1,2,3,4" To="0,0,0,0"

Що таке верхнє праворуч і ліворуч знизу? 1- правий 2- верхній 3- лівий 4 - нижній

Це так?


1
Другий результат при пошуку маржинальної порядку WPF, stackoverflow.com/questions/520422 / ... . лівий верхній правий низ
Луказоїд


@PapaJohn Щоб бути більш конкретним щодо @amit jhaнаданого посилання , перегляньте розділ із заголовком XAML Valuesполя в цьому посиланні.
нам

Відповіді:


403
Margin="1,2,3,4"
  1. Зліва,
  2. Вгорі,
  3. Правильно,
  4. Знизу

Також можна вказати лише два розміри, подібні до цього:

Margin="1,2"
  1. Ліво і право
  2. Зверху ТА знизу

Нарешті ви можете вказати один розмір:

Margin="1"
  1. використовується для всіх сторін

Порядок такий самий, як у WinForms.


5
LTRB - це коротке позначення, яке легко запам'ятати.
Сай

44
Примітка: це інший порядок, ніж порядок css html, який знаходиться вгорі, вправо, знизу, зліва.
Раскін

7
Хто-небудь має розуміння, чому вони вирішили піти з чимось відмінним від CSS?
Чарльз Клейтон

5
@crclayton - Як я писав; порядок такий самий, як у WinForms. WinForms - це природний попередник для WPF, тому програмне забезпечення (розробники) може перейти з WinForms на WPF.
Ерно

30
Як щодо. WPF стартує на Заході. Netscape стартує на Півночі? І очевидно за годинниковою стрілкою для обох.
Мартін Каподічі

33

Є три унікальні ситуації:

  • 4 числа , напр Margin="a,b,c,d".
  • 2 числа , напр Margin="a,b".
  • 1 число , напр Margin="a".

4 числа

Якщо є 4 числа , то його left, top, right,bottom ( по годинниковою стрілкою коло , починаючи з середини лівого краю). Перше число - це завжди "Захід", наприклад "WPF":

<object Margin="left,top,right,bottom"/>

Приклад: якщо ми використовуємо Margin="10,20,30,40" його, генерується:

введіть тут опис зображення

2 числа

Якщо є 2 числа , то перший - лівий та правий товщина поля, другий - товщина верхньої та нижньої меж. Перше число - це завжди "Захід", наприклад "WPF":

<object Margin="a,b"/> // Equivalent to Margin="a,b,a,b".

Приклад: якщо ми використовуємо Margin="10,30", лівий і правий поля обоє 10, а верхній і нижній - обидва 30.

введіть тут опис зображення

1 номер

Якщо є 1 число , то число повторюється (воно по суті є товщиною межі).

<object Margin="a"/> // Equivalent to Margin="a,a,a,a".

Приклад: якщо ми використовуємоMargin="20" його, генерується:

введіть тут опис зображення

Оновлення 2020-05-27

Протягом останніх 5 років працювали над масштабним додатком WPF з більш ніж 100 екранами. Частина команди 5 розробок WPF / C # / Java. Врешті-решт ми вирішили використати 1 число (для товщини кордону) або 4 числа. Ми ніколи не використовуємо 2. Це послідовно, і, здається, це хороший спосіб зменшити когнітивне навантаження при розвитку.


Правило:

Усі номери ширини починаються зліва ("Захід", як "WPF") і йдуть за годинниковою стрілкою (якщо два числа, то йдіть лише за годинниковою стрілкою двічі, потім віддзеркалюйте решту).


1
"Якщо є 2 числа, то перше - це ліва та права товщина поля". Але в прикладі перше число - 30, і це в кінці - верхнє і нижнє поле.
Пітер Брюйнс

21

Просто тому, що коментар @MartinCapodici є приголомшливим, я пишу тут як відповідь, щоб надати наочність.

Усі за годинниковою стрілкою:

  • W PF start W est (зліва-> верх-> право-> внизу)
  • N etscape (тобто CSS) починається N orth (вгору-> право-> знизу-> ліворуч)

7
<object Margin="left,top,right,bottom"/>
- or - 
<object Margin="left,top"/>
- or - 
<object Margin="thicknessReference"/>

Дивіться тут: http://msdn.microsoft.com/en-us/library/system.windows.frameworkelement.margin.aspx


3
У другому прикладі "ліворуч, зверху" його фактично повторюється: перше число стосується ліворуч та праворуч, друге - зверху та знизу, дивіться мою відповідь нижче.
Контанго
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.