Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Windows Presentation Foundation (WPF), birincil amacı farklı içerik türlerini görüntülemek olan birçok denetim ve denetim benzeri tür sağlayan bir sunu platformudur. Hangi denetimin kullanılacağını veya hangi denetimin türetileceğini belirlemek için, belirli bir denetimin en iyi görüntüleyebileceğiniz nesne türlerini anlamanız gerekir.
Bu konu başlığında WPF denetimi ve denetim benzeri türler için içerik modeli özetlenmiştir. İçerik modeli, denetimde hangi içeriğin kullanılabileceğini açıklar. Bu konu başlığında, her içerik modelinin içerik özellikleri de listelenir. İçerik özelliği, nesnenin içeriğini depolamak için kullanılan bir özelliktir.
Rastgele içerik içeren sınıflar
Bazı denetimler dize, DateTime nesne veya UIElement ek öğeler için kapsayıcı gibi herhangi bir türde nesne içerebilir. Örneğin, bir Button resim ve metin içerebilir; veya CheckBox değerini DateTime.Nowiçerebilir.
WPF'nin rastgele içerik içerebilen dört sınıfı vardır. Aşağıdaki tabloda, öğesinden Controldevralan sınıflar listelenir.
| Rastgele içerik içeren sınıf | İçerik |
|---|---|
| ContentControl | Tek bir rastgele nesne. |
| HeaderedContentControl | Her ikisi de rastgele nesneler olan bir üst bilgi ve tek bir öğe. |
| ItemsControl | Rastgele nesneler koleksiyonu. |
| HeaderedItemsControl | Başlık ve rastgele nesnelerden oluşan bir öğe koleksiyonu. |
Bu sınıflardan devralan denetimler aynı türde içerik içerebilir ve içeriği aynı şekilde işleyebilir. Aşağıdaki çizimde, her içerik modelinden bir resim ve bir metin içeren bir denetim gösterilmektedir:
Tek Bir Rastgele Nesne İçeren Denetimler
Bir sınıf ContentControl tek bir rastgele içerik içerir. İçerik özelliği şeklindedir Content. Aşağıdaki denetimler, ContentControl öğesinden türetilir ve onun içerik modelini kullanır.
Aşağıdaki çizimde, Content'si bir dize, bir DateTime nesnesi, bir Rectangle ve bir Panel ile bir Ellipse içeren TextBlock olarak ayarlanmış dört düğme gösterilmektedir.
Özelliğinin nasıl ayarlanacağına ilişkin Content bir örnek için bkz ContentControl. .
Üst Bilgi ve Tek Bir Serbestçe Seçilen Nesne İçeren Kontroller
HeaderedContentControl sınıfı ContentControl sınıfından devralır ve başlık içeren içeriği görüntüler. İçerik özelliğini Content öğesinden devralır ContentControl, ve türü Header olan Object özelliğini tanımlar; bu nedenle her ikisi de rastgele bir nesne olabilir.
Aşağıdaki denetimler, HeaderedContentControl öğesinden türetilir ve onun içerik modelini kullanır.
Aşağıdaki çizimde iki TabItem nesne gösterilmektedir. İlk TabItem, UIElement ve Header olarak Content nesnelerine sahiptir. Header bir StackPanel olarak ayarlanır ve bu StackPanel, bir TextBlock ve bir içerir. Content, StackPanel ve TextBlock içeren bir Label olarak ayarlanır. İkincisinde TabItem içinde bir dize ve Header içinde bir TextBlock vardır.
Nesne oluşturma TabItem örneği için bkz HeaderedContentControl. .
Rastgele Nesne Koleksiyonu İçeren Denetimler
ItemsControl sınıfı öğesinden Control devralır ve dizeler, nesneler veya diğer öğeler gibi birden çok öğe içerebilir. İçerik özellikleri ItemsSource ve Items şeklindedir. ItemsSource genellikle ItemsControl'i bir veri koleksiyonuyla doldurmak için kullanılır. ItemsControl öğesini doldurmak için bir koleksiyon kullanmak istemiyorsanız, Items özelliğini kullanarak öğe ekleyebilirsiniz.
Aşağıdaki denetimler, ItemsControl öğesinden türetilir ve onun içerik modelini kullanır.
Aşağıdaki çizimde, bu tür öğeleri içeren bir ListBox gösterilmektedir:
Üst Bilgi ve Rastgele Nesne Koleksiyonu İçeren Denetimler
HeaderedItemsControl sınıfı öğesinden ItemsControl devralır ve dizeler, nesneler veya diğer öğeler gibi birden çok öğe ve üst bilgi içerebilir. Özelliklerini ItemsControl, ItemsSource ve Items devralır ve rastgele bir nesne olabilecek Header özelliğini tanımlar.
Aşağıdaki denetimler, HeaderedItemsControl öğesinden türetilir ve onun içerik modelini kullanır.
UIElement Nesneleri Koleksiyonu İçeren Sınıflar
Panel Sınıf, alt UIElement nesneleri konumlandırıp düzenler. İçerik özelliği şeklindedir Children.
Aşağıdaki sınıflar Panel sınıfından türetilmiştir ve onun içerik modelini kullanır.
Daha fazla bilgi için bkz. Panellere Genel Bakış.
UIElement Görünümünü Etkileyen Sınıflar
sınıfı, Decorator tek bir alt öğeye UIElementveya çevresinde görsel efektler uygular. İçerik özelliği şeklindedir Child. Aşağıdaki sınıflar içerik modelini devralır Decorator ve kullanır:
Aşağıdaki çizimde çevresinde bir TextBox bulunan (ile süslenmiş) bir Border gösterilmektedir.
Kenarlıklı TextBlock
UIElement Hakkında Görsel Geri Bildirim Sağlayan Sınıflar
sınıfı, Adorner kullanıcıya görsel ipuçları sağlar. Örneğin, öğelere işlevsel tanıtıcılar eklemek veya denetim hakkında durum bilgileri sağlamak için bir Adorner kullanın. Bu Adorner sınıfı, kendi süsleyicilerinizi oluşturabilmeniz için bir çerçeve sağlar. WPF, uygulanan herhangi bir donatıcı sağlamaz. Daha fazla bilgi için bkz . Donatıcılara Genel Bakış.
Kullanıcıların Metin Girmesini Sağlayan Sınıflar
WPF, kullanıcıların metin girmesini sağlayan üç birincil denetim sağlar. Her denetim metni farklı görüntüler. Aşağıdaki tabloda metinle ilgili bu üç denetim, metin görüntülediklerindeki yetenekleri ve denetimin metnini içeren özellikleri listelenmektedir.
| Yönetim | Metin şu şekilde görüntülenir: | İçerik özelliği |
|---|---|---|
| TextBox | Düz metin | Text |
| RichTextBox | Biçimlendirilmiş metin | Document |
| PasswordBox | Gizli metin (karakterler maskelenir) | Password |
Metninizi görüntüleyen sınıflar
Düz veya biçimlendirilmiş metinleri görüntülemek için çeşitli sınıflar kullanılabilir. Küçük miktarlarda metin görüntülemek için kullanabilirsiniz TextBlock . Büyük miktarda metin görüntülemek istiyorsanız , FlowDocumentReaderveya FlowDocumentPageViewer denetimlerini kullanınFlowDocumentScrollViewer.
iki TextBlock içerik özelliğine sahiptir: Text ve Inlines. Tutarlı biçimlendirme kullanan metinleri görüntülemek istediğinizde, Text özellik genellikle en iyi tercihinizdir. Metnin tamamında farklı biçimlendirme kullanmayı planlıyorsanız özelliğini kullanın Inlines . Inlines özelliği, metnin nasıl biçimlendirileceğini belirten bir nesne koleksiyonudurInline.
Aşağıdaki tabloda , FlowDocumentReaderve FlowDocumentPageViewer sınıfları için FlowDocumentScrollVieweriçerik özelliği listelemektedir.
| Yönetim | İçerik özelliği | İçerik özelliği türü |
|---|---|---|
| FlowDocumentPageViewer | Belge | IDocumentPaginatorSource |
| FlowDocumentReader | Belge | FlowDocument |
| FlowDocumentScrollViewer | Belge | FlowDocument |
FlowDocument arabirimini IDocumentPaginatorSource uygular; bu nedenle, üç sınıf da içerik olarak alabilirFlowDocument.
Metninizi Biçimlendiren Sınıflar
TextElement ve ilgili sınıfları metni biçimlendirmenize olanak sağlar. TextElement nesneleri, TextBlock ve FlowDocument nesnelerindeki metni içerir ve biçimlendirir. İki birincil nesne türü TextElement öğeler ve Block öğelerdirInline. Block Öğe, paragraf veya liste gibi bir metin bloğunu temsil eder. Öğe Inline , bloktaki metnin bir bölümünü temsil eder. Birçok Inline sınıf, uygulandıkları metin için biçimlendirme belirtir. Her TextElement birinin kendi içerik modeli vardır. Daha fazla bilgi için bkz . TextElement İçerik Modeline Genel Bakış.
Ayrıca bakınız
.NET Desktop feedback