Block.Margin Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar eller anger marginaltjockleken för elementet.
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
Egenskapsvärde
En Thickness struktur som anger hur mycket marginal som ska tillämpas i enhetsoberoende bildpunkter. Standardvärdet är en enhetlig tjocklek på noll (0,0).
Exempel
I följande exempel visas hur du anger attributet för Margin ett Block element (Paragraph).
<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>
Följande bild visar hur föregående exempel återges. Överdrivna tjocklekar och färger används som illustration.
I följande exempel visas hur du ställer in Margin-egenskapen programmatiskt.
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)
Kommentarer
Margin är buffertutrymme som faller utanför ett elements innehållsområde, mellan kanterna på elementets innehållsområde och kanterna på det överordnade elementet. Jämför med Padding, vilket är buffertutrymme som faller inom ett elements innehållsområde, mellan elementets innehåll och elementets inre kant.
XAML-attributanvändning
<object Margin="uniformThickness"/>
- or -
<object Margin="independentThickness"/>
- or -
<object Margin="qualifiedUniformThickness"/>
- or -
<object Margin="qualifiedIndependentThickness"/>
XAML-värden
uniformThickness Strängrepresentation av ett enda Double värde som ska tillämpas enhetligt på alla fyra tjockleksdimensionerna. Ett värde av "10" motsvarar till exempel värdet "10,10,10,10". Ett okvalificerat värde mäts i enhetsoberoende bildpunkter. Strängar behöver inte uttryckligen innehålla decimaltecken.
independentThickness Strängrepresentation av fyra ordnade Double värden som motsvarar oberoende tjockleksdimensioner för vänster, överkant, höger och nederkant i den här ordningen. De fyra värdena måste avgränsas med kommatecken. blanksteg tillåts inte. Till exempel resulterar "5,10,15,20" i 5 bildpunkter med marginal till vänster om innehållet, 10 bildpunkter marginal över innehåll, 15 bildpunkter marginal till höger om innehåll och 20 bildpunkter marginal under innehållet.
qualifiedUniformThickness Ett värde som beskrivs av uniformThickness följt av någon av följande enhetsspecificerare: px, in.
px (standard) är enhetsoberoende enheter (1/96 tum per enhet)
in är tum; 1in==96px
Ger till exempel "1in" en enhetlig marginal på 1 tum i alla riktningar.
qualifiedIndependentThickness Ett värde som beskrivs av independentThickness, med varje oberoende värde följt av någon av följande enhetsspecificerare: px, in.
px (standard) är enhetsoberoende enheter (1/96 tum per enhet)
in är tum; 1in==96px
Till exempel "1.5in,0.8in,1.5in,0.8in". Enhetsspecificerare kan blandas eller utelämnas från ett eller flera värden.
Information om beroendeegenskap
| Objekt | Value |
|---|---|
| Identifierarfält | MarginProperty |
Metadataegenskaper inställda på true |
AffectsMeasure |