FrameworkElement.Name Özellik

Tanım

Öğesinin tanımlayıcı adını alır veya ayarlar. Ad, olay işleyicisi kodu gibi arka planda kod oluşturmanın bir XAML işlemcisi tarafından işlenirken bir işaretleme öğesine başvurabilmesi için bir başvuru sağlar.

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

Özellik Değeri

String

Öğe adı. Varsayılan değer boş bir dizedir.

Uygulamalar

Öznitelikler

Örnekler

Aşağıdaki örnek kodda özelliğini ayarlar Name ve ardından çağırarak RegisterNameadı yeni oluşturulana NameScope kaydeder. Görsel taslaklar tarafından hedefleme gerektirdiğinden ve nesne başvurusu tarafından hedeflenemediğinden Name, burada gösterilen teknik görsel taslaklarla animasyon oluşturmak için bir gereksinimdir.

//  
// Create a Rectangle
//
Rectangle myRectangle = new Rectangle();
myRectangle.Width = 200;
myRectangle.Height = 200;
myRectangle.Name = "myRectangle";
this.RegisterName(myRectangle.Name, myRectangle);
'  
' Create a Rectangle
'
Dim myRectangle As New Rectangle()
myRectangle.Width = 200
myRectangle.Height = 200
myRectangle.Name = "myRectangle"
Me.RegisterName(myRectangle.Name, myRectangle)

Açıklamalar

Bu özelliğin en yaygın kullanımı, işaretlemede öznitelik olarak bir XAML öğesi adı belirtmektir.

Bu özellik temelde XAML x:Name Yönergesini ayarlamak için WPF çerçeve düzeyi kolaylık özelliği sağlar.

Adlar ad kapsamı içinde benzersiz olmalıdır. Daha fazla bilgi için bkz . WPF XAML Ad Kapsamları.

Name Kodda öğe oluşturuyorsanız almak yaygın değildir. Kodda zaten uygun başvurunuz varsa, yalnızca öğe başvurusunda yöntemleri ve özellikleri çağırabilirsiniz ve genellikle öğesine ihtiyacınız Nameolmaz. Dizenin Name aşırı yüklenmiş bir anlamı olması, örneğin bu adın kullanıcı arabiriminde görüntülenmesinin yararlı olması buna özel bir durumdur. Name Özgün Name değer işaretlemeden ayarlandıysa arka planda koddan ayarının ayarlanması da önerilmez ve XAML yüklendikten sonra özelliği değiştirildiğinde özgün nesne başvurusu değişmez. Nesne başvuruları yalnızca temel ad kapsamları ayrıştırma sırasında açıkça oluşturulduğunda oluşturulur. Zaten yüklenmiş bir öğenin özelliğinde Name etkili bir değişiklik yapmak için özellikle çağrısı RegisterName yapmanız gerekir.

Koddan ayarlamanın Name önemli olduğu önemli bir durum, görsel taslakların çalıştırılacağı öğelerin adlarını kaydederken çalışma zamanında bunlara başvurulabilmesidir. Bir adı kaydedebilmeniz için önce örnek oluşturup atamanız NameScope gerekebilir. Örnek bölümüne veya Görsel Taslaklara Genel Bakış'a bakın.

Koddan ayarlamanın Name uygulamaları sınırlıdır, ancak öğesi Name alma işlemi daha yaygındır. Uygulamanızın sayfaların uygulamaya yeniden yüklendiği bir gezinti modelini desteklemesi ve çalışma zamanı kodunun bu sayfa için her zaman arka planda tanımlanmış olması özel bir senaryodur. Herhangi bir FrameworkElementöğesinden kullanılabilen yardımcı program yöntemiFindName, ilgili öğenin mantıksal ağacından herhangi bir öğeyi Name bulabilir ve gerektiğinde ağacı özyinelemeli olarak arar. Alternatif olarak, bir dizeyi FindLogicalNode bağımsız değişken olarak da alan Name statik yöntemini LogicalTreeHelperkullanabilirsiniz.

Genellikle kullanılan kök öğeler (WindowPageörneğin) arabirimini INameScopeuygular. Bu arabirimin uygulamalarının, adların kapsamları içinde belirsiz olmasını zorunlu kılması beklenir. Bu arabirimi tanımlayan kök öğeler, tüm ilgili API'ler için ad kapsamı davranış sınırlarını da tanımlar.

Name özelliği, diğer işlemler için bir tanımlayıcı işlevi de görür. Örneğin, WPF otomasyon modeli istemciler ve sağlayıcılar için AutomationId olarak kullanır Name .

için Name kullanılan dize değerleri, XAML belirtimi tarafından tanımlanan temel x:Name Yönergesi tarafından uygulanan bazı kısıtlamalara sahiptir. En önemlisi, bir Name harf veya alt çizgi karakteriyle (_) başlamalıdır ve yalnızca harf, rakam veya alt çizgi içermelidir. Daha fazla bilgi için bkz . WPF XAML Ad Kapsamları.

Name animasyon oluşturulamayan çok az bağımlılık özelliğinden biridir (IsAnimationProhibited meta verilerdedir true ), çünkü adın kendisi bir animasyonu hedeflemek için çok önemlidir. a veri bağlama Name teknik olarak mümkündür, ancak veri bağlama Name özelliğin amaçlanan ana amacına hizmet edemeyeceğinden son derece nadir bir senaryodur: arka plan kod için tanımlayıcı bağlantı noktası sağlamak.

Bağımlılık Özelliği Bilgileri

Tanımlayıcı alanı NameProperty
Meta veri özellikleri olarak ayarlandı true IsAnimationProhibited

Şunlara uygulanır