Share via


Kullanıcı Arabirimi Tür Düzenleyicilerine Genel Bakış

Bir kullanıcı arabirimi (UI) tür Düzenleyici uygulayarak karmaşık özellik türleri için özel bir tasarım zamanı deneyimi sağlayabilir.

Özel türler düzenleme ve görüntüleme

Özel bir tür bir özellik olarak açığa çıkaran, özelliğin değeri düzenlemek için üç yolu vardır bir PropertyGrid:

  • Bir yerde kendi özelliği bir dize olarak düzenleyebilirsiniz.Bunu gerektiren bir TypeConverter özel türünüz için.Daha fazla bilgi için bkz. Nasıl yapılır: Tür Dönüştürücü Uygulama.

  • Açılan kullanıcı Arabirimi ile kendi özelliği düzenleyebilirsiniz.Bu tek tıklatma ile ayarlanabilir özellikleri için özellikle yararlıdır.

  • Kalıcı bir iletişim kutusu ile kendi özelliği düzenleyebilirsiniz.Kendi özellik özellikle karmaşık ise, tam iletişim kutusunda doğru şekilde düzenlemek gerekli olabilir.

Tek tıklatma veya kalıcı bir iletişim kutusu düzenlemeyi etkinleştirmek için etkileşimli UI türü Düzenleyici uygulamanız gereken bir PropertyGrid.

Açılan Düzenleyicileri

Açılan düzenleyicileri, tek bir tıklatmayla set türleri için idealdir.Örneğin, düzenlediğiniz Dock ve BackColor özelliklerini Control , sınıf bir PropertyGrid açılan Düzenleyicisi ile.

OK düğmesini tıklatarak açılan UI türü editor erişmek (Aşağı ok Özellikler penceresi) seçili özellik girişte yanında beliren bir PropertyGrid.Bağlı, özel kullanıcı Arabirimi görüntülenir PropertyGrid.Pencerenin üst kısmında özelliği girdisinin alt konumlandırılır ve genişliğini uyan özellik girdisi.Kullanıcı Seçimi yaptıktan sonra bu düzenleyici penceresinde de kapatılmalıdır.Uygulamanız çağırması gerekir DropDownControl yöntemi, kullanıcı Arabirimi konumlandırıp tasarım ortamında Düzenleyicisi penceresinde yazın ve çağırması gerekir CloseDropDown pencereyi kapatmak için yöntem.

Kalıcı Düzenleyicileri tamamen etkileşimli bir kullanıcı Arabirimi gerektiren türleri için kullanışlıdır.Örneğin, koleksiyon Düzenleyicileri gibi TabPage Collection Editor , TabControl veya Edit Columns iletişim kutusunun DataGridView denetim olan kalıcı Düzenleyicileri.

Üç nokta yan yana düğmesini tıklatarak bir kalıcı UI türü düzenleyicisine erişmek (VisualStudioEllipsesButton ekran görüntüsü) seçili özellik girişte yanında beliren bir PropertyGrid.Sizin kalıcı bir iletişim kutusu görüntülenir ve kullanıcının normal iletişim kutusu gibi kendisiyle etkileşim kurar.Uygulamanız çağırması gerekir ShowDialog getirip tasarım ortamını iletişim kutusunda boyut yöntemi.

UI türü Düzenleyicisi uygulama

Özel UI türü Düzenleyici uygulamak için en az aşağıdaki görevleri gerçekleştirmeniz gerekir:

  • Türetildiği sınıfı tanımla UITypeEditor.

  • Geçersiz kılma GetEditStyle bildirmek için yöntem PropertyGrid Düzenleyicisi düzenleyen Stil türü.

  • Geçersiz kılma EditValue kullanıcı Arabirimi, kullanıcı girdi işleme ve değer atama yöntemi.

Bir değerin sunumunu boyamak için ek destek ekleyebileceğiniz bir PropertyGrid aşağıdaki görevleri yerine getirmenize göre:

  • Geçersiz kılma GetPaintValueSupported düzenleyen değer gösterimi görüntüleme desteklediğini göstermek için.

  • Geçersiz kılma PaintValue değerinin temsili görüntüsünü uygulamak.

  • Geçersiz kılma UITypeEditor yapıcı yöntemi Düzenleyicisi'ni başlatma davranışı varsa.

[!NOT]

UI türü düzenleyicileri, türlerden birini kullanarak genellikle uygulanır System.Windows.Forms ad değildir, ancak bu bir gereklilik.Standart UI türü düzenleyicilerine.net Framework türetmek UITypeEditor.

UITypeEditor sınıfından türeyen

Özel UI türü düzenleyiciniz türetilmesi gerekir UITypeEditor sınıfı.UI türü düzenleyen özel başlatma gerektiriyorsa, varsayılan bir kurucusu tanımlayın.

GetEditStyle yöntemi geçersiz kılma

Tasarımcısı'nda bir bileşeni veya denetimi seçtiğinizde özelliklerini penceresinde seçili bileşen veya denetimin özellik değerleriyle Painting.Tasarım ortamını sorguları özelliği seçtiğinizde, GetEditStyle özellik girdisi temsil belirleme yöntemi.

Sizin geçersiz kılma değeri döndürür UITypeEditorEditStyle UI türü Düzenleyici uygun stili iletişim kurmak için numaralandırma.

Aşağıdaki tabloda ilişkili davranışı gösterir UITypeEditorEditStyle değeri.

Üye adı

Davranış

None

Etkileşimli UI bileşen sağlar.Uygun bir TypeConverter bir özellik değeri bir dize girişi dönüştürmek için kullanılır.

DropDown

Aşağı ok düğmesini görüntüler (Aşağı ok Özellikler penceresi) özellik girişteki.Kullanıcı Arabirimi, bir açılır pencerede barındırılmaktadır.

Modal

Üç nokta düğmesini görüntüler (VisualStudioEllipsesButton ekran görüntüsü) özellik girişteki.UI kalıcı bir iletişim kutusudur.

EditValue yöntemi geçersiz kılma

EditValue Yöntemi kullanıcı Arabirimi görüntülenir ve kullanıcının seçtiği değere özelliğinin değerini ayarlar.

Açılan Düzenleyicisi

Bir hizmet sağlayıcısının sorgulamak için açılan bir UI türü Düzenleyici, IWindowsFormsEditorService arabirimi.Bu hizmet konumu ve boyutu bilgilerini, kullanıcı Arabirimi sağlar.Sizin UI tipik olarak will be implemented bir Control.Sizin EditValue uygulaması bu denetimi örneğini oluşturur, geçerli özellik değeriyle başlatır ve kendisine gönderdiği DropDownControl tasarım ortamı tarafından yürütülecek yöntem.Kullanıcı özelliği için yeni bir değer belirlendiğinde, EditValue uygulama kapanır UI çağırarak CloseDropDown.Gelen bir dönüş değeri, EditValue uygulaması haline gelir, görüntülenen yeni özellik değeri bir PropertyGrid.

Kalıcı Düzenleyicisi

Bir hizmet sağlayıcısının sorgulamak için kalıcı bir UI türü Düzenleyici, IWindowsFormsEditorService arabirimi.Bu hizmet, iletişim kutusu için konum bilgilerini sağlar.Türetilmiş bir sınıf olarak kendi UI genellikle will be implemented Form.Sizin EditValue uygulaması bu formun bir örneğini oluşturur, geçerli özellik değeriyle başlatır ve kendisine gönderdiği ShowDialog tasarım ortamı tarafından yürütülecek yöntem.Bu çağrı gelen bir dönüş değeri ise OK, formdan yeni özellik değerini almak ve döndürme değeri olarak kullanın.Gelen bir dönüş değeri, EditValue uygulaması haline gelir, görüntülenen yeni özellik değeri bir PropertyGrid.

ITypeDescriptorContext parametresi

EditValue Yöntemi alır bir ITypeDescriptorContext kullanabileceğiniz parametre sorgusunu tasarım ortamı hakkında kavramsal bilgi.Bu parametre ile aşağıdaki üyeleri erişebilir:

Özelliğin değeri ile ilgili grafikli bir temsilini sağlayan

Grafik gösterimi, özelliğin değeri geçersiz kılarak görüntülemek PaintValue yöntemi.Sağlanan kullanabilirsiniz PaintValueEventArgs , temsili özelliğin girişinde sol tarafında küçük dikdörtgen çizmek için parametre bir PropertyGrid.

[!NOT]

Sizin grafik gösterimini tarafından tanımlanan sınırları içinde tuttuğunuzdan emin olun Bounds özelliðinin PaintValueEventArgs parametresi.

Geçersiz kılma GetPaintValueSupported UI türü düzenleyiciniz değerini özel bir gösterimini boyar tasarım ortamını uyarmak için doğru geri dönmek için yöntem.

Ayrıca bkz.

Görevler

Nasıl yapılır: UI Tür Düzenleyici Oluşturma

Nasıl yapılır: Tasarım Zamanı Özelliklerinden Faydalanan Windows Formları Denetimi Oluşturma

Başvuru

UITypeEditorEditStyle

IWindowsFormsEditorService

Diğer Kaynaklar

Kullanıcı Arabirimi Tür Düzenleyicileri