Megosztás a következőn keresztül:


Gazdag szöveges blokk

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

WinUI 3 Katalógus ikon 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 számos beágyazott szöveges elemet tartalmaz, amelyekkel formázhatja a szöveget, például Félkövér, Dőlt, Run, Span és LineBreak. A szövegszakaszokra formázást általában úgy alkalmazhat, ha a szöveget Run vagy span elembe helyezi, majd tulajdonságokat állít be az adott elemen.

Í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>

Szövegvezérlők

Tervezőknek

Fejlesztőknek (XAML)

Fejlesztőknek (egyéb)