TextElement 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
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
- 繼承
- 衍生
- 屬性
備註
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 應用程式中回傳 |
| DispatcherQueue |
得到 |
| 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 |
當使用者完成一個存取金鑰序列,通知元素應該呼叫存取金鑰動作時,會發生這種情況。 |