FrameworkContentElement.Name 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定項目的識別名稱。 此名稱會提供實例參考,讓程式設計程式碼後置,例如事件處理常式程式碼,可以在 XAML 剖析期間建構專案時參考元素。
public:
property System::String ^ Name { System::String ^ get(); void set(System::String ^ value); };
[System.Windows.Localizability(System.Windows.LocalizationCategory.NeverLocalize)]
public string Name { get; set; }
[<System.Windows.Localizability(System.Windows.LocalizationCategory.NeverLocalize)>]
member this.Name : string with get, set
Public Property Name As String
屬性值
元素的名稱。
實作
- 屬性
備註
此屬性最常見的用法是在標記中指定 XAML 專案名稱時。
這個屬性基本上會提供 WPF 架構層級的便利屬性,以設定 XAML x:Name 指示詞。
Name從程式碼取得並不常見,因為如果您已經有程式碼中的適當參考,您可以直接在專案參考上呼叫方法和屬性,而且通常 Name 不需要 。 例外狀況是,如果字串具有一些多載的意義,例如,如果在 UI 中顯示該名稱很有用。 Name如果未建議從標記設定原始 Name 程式碼,則設定來自程式碼的 ,而變更 屬性將不會變更物件參考。 只有在 XAML 載入期間明確建立基礎名稱範圍時,才會建立這類物件參考。
您必須特別呼叫 RegisterName ,才能對 Name 已載入專案的 屬性進行有效的變更。
有一個值得注意的案例,其中從程式碼設定 Name 很重要,就是命名腳本將針對其執行的專案。 您必須先具現化並指派 NameScope 實例,才能註冊名稱。 請參閱範例一節或 分鏡腳本概觀。
從程式碼設定 Name 有有限的應用程式,但依名稱查閱元素比較常見,特別是當您採用導覽模型時,頁面會重載至應用程式,而執行時間程式碼不一定是該個別頁面的程式碼後置。 公用程式方法 FindName 可從任何 FrameworkContentElement 取得,可透過遞迴方式在該元素的邏輯樹狀結構中找到任何專案 Name 。 或者,您可以使用 的 FindLogicalNode LogicalTreeHelper 靜態方法,它也會採用 Name 字串做為引數。
常用的根項目 (Window , Page 例如) 實作 介面 INameScope 。 此介面的實作預期會在其範圍內強制執行該名稱不明確。
相依性屬性資訊
識別碼欄位 | NameProperty |
設定為 的中繼資料屬性 true |
IsAnimationProhibited |