Block.Margin Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Öğe için kenar boşluğu kalınlığını alır veya ayarlar.
public:
property System::Windows::Thickness Margin { System::Windows::Thickness get(); void set(System::Windows::Thickness value); };
public System.Windows.Thickness Margin { get; set; }
member this.Margin : System.Windows.Thickness with get, set
Public Property Margin As Thickness
Özellik Değeri
Thickness Cihazdan bağımsız piksellerde uygulanacak kenar boşluğu miktarını belirten bir yapı. Varsayılan değer, sıfır (0,0) tekdüzen kalınlığıdır.
Örnekler
Aşağıdaki örnekte bir öğenin özniteliğinin Margin nasıl ayarlanacağı gösterilmektedir (Paragraph .Block
<FlowDocument Background="LightSlateGray" ColumnWidth="2000">
<Section Background="DarkMagenta" Margin="0" Padding="0">
<Paragraph Background="White">
<Run>Default paragraph.</Run>
</Paragraph>
<Paragraph Background="White">
<Run>Default paragraph.</Run>
</Paragraph>
<Paragraph Background="LightBlue" Margin="50">
<Run>This paragraph has a magin of 50 pixels set, but no padding.</Run>
</Paragraph>
<Paragraph Background="LightCoral" Padding="50">
<Run>This paragraph has padding of 50 pixels set, but no margin.</Run>
</Paragraph>
<Paragraph Background="LightGreen" Margin="50" Padding="50">
<Run>This paragraph has both padding and margin set to 50 pixels.</Run>
</Paragraph>
<Paragraph Background="White">
<Run>Default paragraph.</Run>
</Paragraph>
<Paragraph Background="White">
<Run>Default paragraph.</Run>
</Paragraph>
</Section>
</FlowDocument>
Aşağıdaki şekilde, önceki örneğin nasıl işlenme şekli gösterilmektedir. İllüstrasyon için abartılı kalınlıklar ve renkler kullanılır.
Aşağıdaki örnekte özelliğin Margin program aracılığıyla nasıl ayarlanacağı gösterilmektedir.
FlowDocument flowDoc = new FlowDocument();
Section sec = new Section();
flowDoc.Background = Brushes.LightSlateGray;
flowDoc.ColumnWidth = 2000;
sec.Background = Brushes.DarkMagenta;
sec.Padding = sec.Margin = new Thickness(0);
Paragraph defPar1 = new Paragraph(new Run("Default paragraph."));
Paragraph defPar2 = new Paragraph(new Run("Default paragraph."));
Paragraph defPar3 = new Paragraph(new Run("Default paragraph."));
Paragraph defPar4 = new Paragraph(new Run("Default paragraph."));
defPar1.Background = defPar2.Background = defPar3.Background = defPar4.Background = Brushes.White;
Paragraph marginPar = new Paragraph(new Run("This paragraph has a magin of 50 pixels set, but no padding."));
marginPar.Background = Brushes.LightBlue;
marginPar.Margin = new Thickness(50);
Paragraph paddingPar = new Paragraph(new Run("This paragraph has padding of 50 pixels set, but no margin."));
paddingPar.Background = Brushes.LightCoral;
paddingPar.Padding = new Thickness(50);
Paragraph marginPaddingPar = new Paragraph(new Run("This paragraph has both padding and margin set to 50 pixels."));
marginPaddingPar.Background = Brushes.LightGreen;
marginPaddingPar.Padding = marginPaddingPar.Margin = new Thickness(50);
sec.Blocks.Add(defPar1);
sec.Blocks.Add(defPar2);
sec.Blocks.Add(marginPar);
sec.Blocks.Add(paddingPar);
sec.Blocks.Add(marginPaddingPar);
sec.Blocks.Add(defPar3);
sec.Blocks.Add(defPar4);
flowDoc.Blocks.Add(sec);
Dim flowDoc As New FlowDocument()
Dim sec As New Section()
flowDoc.Background = Brushes.LightSlateGray
flowDoc.ColumnWidth = 2000
sec.Background = Brushes.DarkMagenta
sec.Margin = New Thickness(0)
sec.Padding = sec.Margin
Dim defPar1 As New Paragraph(New Run("Default paragraph."))
Dim defPar2 As New Paragraph(New Run("Default paragraph."))
Dim defPar3 As New Paragraph(New Run("Default paragraph."))
Dim defPar4 As New Paragraph(New Run("Default paragraph."))
defPar4.Background = Brushes.White
defPar3.Background = defPar4.Background
defPar2.Background = defPar3.Background
defPar1.Background = defPar2.Background
Dim marginPar As New Paragraph(New Run("This paragraph has a magin of 50 pixels set, but no padding."))
marginPar.Background = Brushes.LightBlue
marginPar.Margin = New Thickness(50)
Dim paddingPar As New Paragraph(New Run("This paragraph has padding of 50 pixels set, but no margin."))
paddingPar.Background = Brushes.LightCoral
paddingPar.Padding = New Thickness(50)
Dim marginPaddingPar As New Paragraph(New Run("This paragraph has both padding and margin set to 50 pixels."))
With marginPaddingPar
.Background = Brushes.LightGreen
.Margin = New Thickness(50)
.Padding = marginPaddingPar.Margin
End With
sec.Blocks.Add(defPar1)
sec.Blocks.Add(defPar2)
sec.Blocks.Add(marginPar)
sec.Blocks.Add(paddingPar)
sec.Blocks.Add(marginPaddingPar)
sec.Blocks.Add(defPar3)
sec.Blocks.Add(defPar4)
flowDoc.Blocks.Add(sec)
Açıklamalar
Margin öğenin içerik alanının kenarları ile üst öğenin kenarları arasında, öğenin içerik alanının dışında kalan arabellek alanıdır. öğesinin içeriğiyle Paddingöğenin iç kenarı arasındaki içerik alanının içinde kalan arabellek alanı olan ile karşıtlık.
XAML Öznitelik Kullanımı
<object Margin="uniformThickness"/>
- or -
<object Margin="independentThickness"/>
- or -
<object Margin="qualifiedUniformThickness"/>
- or -
<object Margin="qualifiedIndependentThickness"/>
XAML Değerleri
uniformThickness
Dört kalınlık boyutuna da tekdüzen uygulamak için tek Double bir değerin dize gösterimi. Örneğin, değerinin "10"
değeri değerine eşdeğerdir "10,10,10,10"
. Nitelenmemiş bir değer cihazdan bağımsız piksel cinsinden ölçülür. Dizelerin açıkça ondalık ayırıcı içermesi gerekmez.
independentThickness
Bu sırada sol, üst, sağ ve alt için bağımsız kalınlık boyutlarına karşılık gelen dört sıralı Double değerin dize gösterimi. Dört değer virgülle ayrılmalıdır; boşluklara izin verilmez. Örneğin, "5,10,15,20", içeriğin solunda 5 piksel kenar boşluğu, içeriğin üzerinde 10 piksel kenar boşluğu, içeriğin sağında 15 piksel kenar boşluğu ve içeriğin altında 20 piksel kenar boşluğuyla sonuçlanıyor.
qualifiedUniformThickness
uniformThickness tarafından tanımlanan bir değer ve ardından aşağıdaki birim tanımlayıcılarından biri: px
, in
.
px
(varsayılan) cihazdan bağımsız birimlerdir (birim başına 1/96 inç)
in
inçtir; 1 inç==96px
Örneğin, "1in"
her yönde 1 inçlik tekdüzen kenar boşluğu sağlar.
qualifiedIndependentThickness
independentThickness tarafından tanımlanan ve her bağımsız değerin ardından aşağıdaki birim tanımlayıcılarından birinin eklediği bir değer: px
, in
.
px
(varsayılan) cihazdan bağımsız birimlerdir (birim başına 1/96 inç)
in
inçtir; 1 inç==96px
Örneğin, "1.5in,0.8in,1.5in,0.8in"
. Birim tanımlayıcıları bir veya daha fazla değerden karıştırılabilir veya atlanabilir.
Bağımlılık Özelliği Bilgileri
Tanımlayıcı alanı | MarginProperty |
Meta veri özellikleri olarak ayarlandı true |
AffectsMeasure |