Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A rich text blokkok számos olyan funkciót biztosítanak a speciális szövegelrendezéshez, amelyet akkor használhat, ha szüksége van bekezdések, beágyazott felhasználói felületi elemek vagy összetett szövegelrendezések támogatására.
Ez a megfelelő vezérlő?
RichTextBlock használata, ha több bekezdés, többoszlopos vagy más összetett szövegelrendezés, illetve beágyazott felhasználói felületi elemek, például képek támogatására van szüksége.
A TextBlock használatával megjelenítheti a legtöbb írásvédett szöveget az alkalmazásban. Használatával megjelenítheti az egysoros vagy többsoros szöveget, a beágyazott linkeket és a félkövér, dőlt vagy aláhúzott formázású szöveget. A TextBlock egyszerűbb tartalommodellt biztosít, így általában egyszerűbben használható, és jobb szövegmegjelenítési teljesítményt nyújt, mint a RichTextBlock. A legtöbb alkalmazás felhasználói felületi szövegéhez előnyben részesítik. Bár sortöréseket is elhelyezhet a szövegben, a TextBlock egyetlen bekezdés megjelenítésére szolgál, és nem támogatja a szöveg behúzását.
A megfelelő szövegvezérlő kiválasztásáról további információt a Szövegvezérlők című cikkben talál.
Recommendations
Lásd a betűtípusok tipográfiáját és irányelveit.
Formázott szövegblokk létrehozása
![]()
A WinUI 3 Katalógus alkalmazás interaktív példákat tartalmaz a WinUI vezérlőire és funkcióira. Kérje le az alkalmazást a Microsoft Áruházból vagy keresse meg a forráskódot a GitHub webhelyen.
A RichTextBlock tartalomtulajdonsága a Blokkok tulajdonság, amely a Bekezdés elemen keresztül támogatja a bekezdésalapú szöveget. Nincs a vezérlőnek Text tulajdonsága, amellyel egyszerűen hozzáférhet a vezérlő szöveges tartalmához az alkalmazásban. A RichTextBlock azonban számos egyedi funkciót biztosít, amelyeket a TextBlock nem biztosít.
A RichTextBlock a következőket támogatja:
- Több bekezdés. A Bekezdések behúzásának beállítása a TextIndent tulajdonság beállításával.
- Beágyazott felhasználói felület elemei. InlineUIContainerrel megjelenítheti a felhasználói felület elemeit, például a képeket, a szöveggel együtt.
- Túlcsordulási tárolók. RichTextBlockOverflow-elemek használata többoszlopos szövegelrendezések létrehozásához.
Paragraphs
A Bekezdés elemekkel definiálhatja a RichTextBlock vezérlőelemben megjelenítendő szövegblokkokat. Minden RichTextBlocknak tartalmaznia kell legalább egy bekezdést.
A RichTextBlock összes bekezdésének behúzási értékét a RichTextBlock.TextIndent tulajdonság beállításával állíthatja be. Ezt a beállítást a RichTextBlock adott bekezdéseinél felülbírálhatja úgy, hogy a Paragraph.TextIndent tulajdonságot egy másik értékre állítja.
<RichTextBlock TextIndent="12">
<Paragraph TextIndent="24">First paragraph.</Paragraph>
<Paragraph>Second paragraph.</Paragraph>
<Paragraph>Third paragraph. <Bold>With an inline.</Bold></Paragraph>
</RichTextBlock>
Beágyazott felhasználói felület elemei
Az InlineUIContainer osztály lehetővé teszi bármely UIElement szövegbe ágyazott megjelenítését. Gyakori forgatókönyv egy kép beágyazott elhelyezése a szöveggel, de használhat interaktív elemeket is, például gombot vagy jelölőnégyzetet.
Ha egynél több elemet szeretne beágyazni ugyanabba a pozícióba, fontolja meg egy panel használatát egyetlen InlineUIContainer gyermekként, majd helyezze el a több elemet a panelen belül.
Ez a példa bemutatja, hogyan szúrhat be képet egy RichTextBlock-ba egy InlineUIContainer használatával.
<RichTextBlock>
<Paragraph>
<Italic>This is an inline image.</Italic>
<InlineUIContainer>
<Image Source="Assets/Square44x44Logo.png" Height="30" Width="30"/>
</InlineUIContainer>
Mauris auctor tincidunt auctor.
</Paragraph>
</RichTextBlock>
Túlcsordulási tárolók
RichTextBlock és RichTextBlockOverflow elemek használatával többoszlopos vagy egyéb speciális lapelrendezéseket hozhat létre. A RichTextBlockOverflow elem tartalma mindig RichTextBlock-elemből származik. A RichTextBlockOverflow elemeket úgy kapcsolhatja össze, hogy egy RichTextBlock vagy egy másik RichTextBlockOverflow elem OverflowContentTarget-jeként állítja be őket.
Íme egy egyszerű példa, amely két oszlopelrendezést hoz létre. Összetettebb példaért tekintse meg a Példák szakaszt.
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition/>
</Grid.ColumnDefinitions>
<RichTextBlock Grid.Column="0"
OverflowContentTarget="{Binding ElementName=overflowContainer}" >
<Paragraph>
Proin ac metus at quam luctus ultricies.
</Paragraph>
</RichTextBlock>
<RichTextBlockOverflow x:Name="overflowContainer" Grid.Column="1"/>
</Grid>
Szöveg formázása
Bár a RichTextBlock egyszerű szöveget tárol, különböző formázási beállításokat alkalmazhat a szöveg megjelenítésének testreszabásához az alkalmazásban. A szöveg megjelenésének módosításához beállíthatja az olyan szabványos vezérlőtulajdonságokat, mint a FontFamily, a FontSize, a FontStyle, az Előtér és a CharacterSpacing. A szöveg formázásához beágyazott szövegelemeket és tipográfiai csatolt tulajdonságokat is használhat. Ezek a beállítások csak azt befolyásolják, hogy a RichTextBlock hogyan jeleníti meg a szöveget helyileg, ezért ha a szöveget rich text vezérlőelembe másolja és illessze be, például nem alkalmaz formázást.
Vonalon belüli elemek
A Microsoft.UI.Xaml.Documents névtér
Íme egy bekezdés, amelyben az első kifejezés félkövér, kék, 16 pontos szövegben jelenik meg.
<Paragraph>
<Bold><Span Foreground="DarkSlateBlue" FontSize="16">Lorem ipsum dolor sit amet</Span></Bold>
, consectetur adipiscing elit.
</Paragraph>
Typography
A tipográfiai osztály csatolt tulajdonságai hozzáférést biztosítanak a Microsoft OpenType tipográfiai tulajdonságainak egy készletéhez. Ezeket a csatolt tulajdonságokat beállíthatja a RichTextBlockban vagy az egyes beágyazott szövegelemeken, ahogy az itt látható.
<RichTextBlock Typography.StylisticSet4="True">
<Paragraph>
<Span Typography.Capitals="SmallCaps">Lorem ipsum dolor sit amet</Span>
, consectetur adipiscing elit.
</Paragraph>
</RichTextBlock>
Kapcsolódó cikkek
Tervezőknek
Fejlesztőknek (XAML)
Fejlesztőknek (egyéb)
Windows developer