語言

TextElement 類別

定義

一個抽象類別,作為同樣抽象的 區塊 與 內聯 類別的基底類別。 TextElement 支援 XAML 文字物件模型中涉及的類別的共通 API,例如控制文字大小、字型族群等屬性。

public ref class TextElement : DependencyObject
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class TextElement : DependencyObject
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class TextElement : DependencyObject
Public Class TextElement
Inherits DependencyObject
繼承
Object Platform::Object IInspectable DependencyObject TextElement
衍生
屬性

備註

TextElement 定義的各種屬性支援 XAML 文字物件模型中涉及類別的共通 API。 以下是最常用的房產清單:

透過設定 TextElement 屬性,你可以將常見的文字格式屬性套用到文字上,無論是區塊形式還是內列格式。 還有其他格式化文字的方法,但 TextElement 並不直接支援這些。 你可以使用字 體 類別附帶的屬性。 字體附加屬性通常支援進階的字體特徵或慣例,例如存取字型層級定義的字體特徵,這些功能不一定被所有字型支援。 例如,你可以將 Typography.Variants 設定為任何文字區塊或內嵌字體的附加屬性,這會影響你選擇的字型在該文字元素設定 FontFamily 時啟用的 font-variants 行為。

TextElement 本身並不定義連接到 XAML 視覺樹的連接點。 換句話說,TextElement 定義了該文字中的文字及其物件模型,但尚未能在 UI 中顯示該文字。 為此,你需要使用 UIElement 的後代控制項或元素,這些元素可以連接到XAML樹和你應用程式視窗的根視覺化。 Windows 執行階段 中有兩個此類元素:

  • TextBlock:僅支援內嵌文字物件模型,並搭配其 Inline 集合。
  • RichTextBlock:支援區塊文字物件模型及其區 塊 集合。 這些區塊可以包含區塊和內嵌區塊。

Note

PasswordBox、 RichEditBox 和 TextBox 不支援基於 TextElement 的文字物件模型。 RichEditBox 確實允許透過 ITextDocument 介面,程式化存取不同的文字物件模型。

TextElement 定義了 API,支援在解析 XAML 後,將文字物件模型視為程式物件來檢視。 特別是 TextElement 實作 了 Name 和 Language,這兩者在 FrameworkElement 上平行呈現同名屬性。 TextElement 也實作 了 FindName (一種基於初始 XAML 中 Name 設定方式,可在執行時尋找物件的工具方法)以及 OnDisconnectVisualChildren (用於進階情境與設計器支援)。

TextElement 有四個屬性,提供從文字內部存取 TextPointer 物件的存取。 這些屬性包括: ContentStart、 ContentEnd、 ElementStart、 ElementEnd。 Windows 執行階段 的 TextPointer 物件提供內容遍歷的入口點。 更多資訊請參見 TextPointer。

TextElement 是一個源自 DependencyObject 的類別。 這表示它可以定義相依屬性,而 TextElement 的每個讀寫屬性都是相依屬性,其屬性識別碼也由 TextElement 定義。 關於依賴屬性啟用的更多資訊,請參閱 依賴屬性概述。

TextElement 衍生類別

TextElement 是兩個派生類別的父類別,將文字物件模型拆分為兩種文字使用慣例: Block 與 Inline。 Block 和 Inline 都被視為基底類別(XAML 裡通常不會看到標籤 <Block> ),它們主要存在於階層結構中,是為了作為其他實用文本元素的父類別。 例如, Block 是 Paragraph 的父類別。 欲了解更多如何使用區塊與內嵌元素,請參見 文字區塊。

屬性

名稱 Description
AccessKey

取得或設定此元素的存取金鑰。

AccessKeyProperty

識別 AccessKey 相依屬性。

AccessKeyScopeOwner

取得或設定一個來源元素,提供該元素的存取鍵作用域,即使該元素不在原始元素的視覺樹中。

AccessKeyScopeOwnerProperty

識別 AccessKeyScopeOwner 相依屬性。

AllowFocusOnInteraction

會獲得或設定一個值,指示該元素在使用者互動時是否自動獲得焦點。

AllowFocusOnInteractionProperty

識別 AllowFocusOnInteraction 相依屬性。

CharacterSpacing

取得或設定字元間的均勻間距,單位為 1/1000 的 em。

CharacterSpacingProperty

識別 CharacterSpacing 依賴屬性。

ContentEnd

會得到一個 TextPointer ,代表元素中內容的結尾。

ContentStart

會取得一個 TextPointer ,代表元素中內容的起始。

Dispatcher

它總是在 Windows 應用程式 SDK 應用程式中回傳 null 。 改用 DispatcherQueue 。

(繼承來源 DependencyObject)
DispatcherQueue

得到 DispatcherQueue 這個物件所關聯的那個。 代表 DispatcherQueue 一個功能,即使程式碼是由非 UI 執行緒發起,也能存取 UI DependencyObject 執行緒。

(繼承來源 DependencyObject)
ElementEnd

會得到一個 TextPointer ,代表元素結束後的位置。

ElementStart

會取得一個 TextPointer ,代表元素開始前的位置。

ExitDisplayModeOnAccessKeyInvoked

取得或設定一個值,指定在呼叫存取鍵時是否會關閉存取鍵顯示。

ExitDisplayModeOnAccessKeyInvokedProperty

識別 ExitDisplayModeOnAccessKeyInvoked 依賴屬性。

FontFamily

取得或設定元素內容的首選頂層字型家族。

FontFamilyProperty

識別 FontFamily 依賴屬性。

FontSize

它會取得或設定元素內容的字型大小。

FontSizeProperty

識別 FontSize 依賴屬性。

FontStretch

取得或設定字型在家族中要選擇的字型寬度。

FontStretchProperty

識別 FontStretch 依賴性屬性。

FontStyle

取得或設定此元素內容的字體樣式。

FontStyleProperty

識別 FontStyle 依賴屬性。

FontWeight

取得或設定頂層字體權重,以便從該元素內容的字型家族中選擇。

FontWeightProperty

識別 FontWeight 依賴屬性。

Foreground

取得或設定筆 刷 套用到這個元素的內容上。

ForegroundProperty

識別 前景依賴性質 。

IsAccessKeyScope

取得或設定一個值,指示元素是否定義其存取鍵作用域。

IsAccessKeyScopeProperty

識別 IsAccessKeyScope 相依屬性。

IsTextScaleFactorEnabled

取得或設定是否啟用自動文字放大(反映系統文字大小設定)。

IsTextScaleFactorEnabledProperty

識別 IsTextScaleFactorEnabled 相依性屬性。

KeyTipHorizontalOffset

取得或設定一個值,表示按鍵點與文字元素相對的左或右位置。

KeyTipHorizontalOffsetProperty

識別 KeyTipHorizontalOffset 依賴屬性。

KeyTipPlacementMode

取得或設定一個值,指示鍵尖與文字元素相對於的位置。

KeyTipPlacementModeProperty

識別 KeyTipPlacementMode 相依屬性。

KeyTipVerticalOffset

取得或設定一個值,表示鍵尖相對於文字元素的上下位置。

KeyTipVerticalOffsetProperty

識別 KeyTipVerticalOffset 依賴屬性。

Language

取得或設定適用於 TextElement 的在地化/全球化語言資訊。

LanguageProperty

識別 語言 依賴屬性。

Name

取得或設定該物件的唯一識別碼。 名稱只能從 XAML 的初始解析中設定。

TextDecorations

取得或設定一個值,指示文字上所施加的裝飾。

TextDecorationsProperty

識別 TextDecorations 依賴屬性。

XamlRoot

取得或設定該元素正在被查看的 XamlRoot。

方法

名稱 Description
ClearValue(DependencyProperty)

清除依賴性財產的局部價值。

(繼承來源 DependencyObject)
FindName(String)

透過參考物件的 x:Name 或 Name 屬性值,在物件模型/執行時物件圖中取得物件。

GetAnimationBaseValue(DependencyProperty)

回傳任何為相依屬性建立的基礎值,適用於動畫未啟用時。

(繼承來源 DependencyObject)
GetValue(DependencyProperty)

回傳 DependencyObject 中相依屬性的當前有效值。

(繼承來源 DependencyObject)
OnDisconnectVisualChildren()

覆寫此方法,實作當類別特定內容或子屬性移除項目時,版面配置與邏輯應如何運作。

ReadLocalValue(DependencyProperty)

若設定了本地值,則回傳依賴性質的局部值。

(繼承來源 DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

註冊一個通知函式,用於監聽此 DependencyObject 實例中特定 DependencyProperty 的變更。

(繼承來源 DependencyObject)
SetValue(DependencyProperty, Object)

將相依屬性的局部值設定在 DependencyObject 上。

(繼承來源 DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

取消先前透過呼叫 RegisterPropertyChangedCallback 註冊的變更通知。

(繼承來源 DependencyObject)

事件

名稱 Description
AccessKeyDisplayDismissed

當存取鍵序列完成時,會通知控制單位應該隱藏存取鍵視覺。

AccessKeyDisplayRequested

當存取鍵序列啟動時,會通知控制單位應該顯示存取鍵視覺化。

AccessKeyInvoked

當使用者完成一個存取金鑰序列,通知元素應該呼叫存取金鑰動作時,會發生這種情況。

適用於

另請參閱