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.
Visual Studio Modelleme ve Görselleştirme SDK'sı (VMSDK), modelleme araçlarını tanımlayabileceğiniz çeşitli düzeyler sağlar:
DSL Tanımı diyagramını kullanarak etki alanına özgü bir dil (DSL) tanımlayın. Diyagram gösterimi, okunabilir XML formu ve kod ve diğer yapıtları oluşturmak için gereken temel araçlarla hızlı bir şekilde DSL oluşturabilirsiniz. Daha fazla bilgi için bkz. Domain-Specific Dili Tanımlama.
DSL Tanımının daha gelişmiş özelliklerini kullanarak DSL'de ince ayar yapın. Örneğin, kullanıcı bir öğe oluşturduğunda ek bağlantıların görünmesini sağlayabilirsiniz. Bu teknikler çoğunlukla DSL Tanımında elde edilir ve bazıları birkaç satır program kodu gerektirir.
Program kodunu kullanarak modelleme araçlarınızı genişletin. VMSDK, uzantılarınızı DSL Tanımından oluşturulan kodla tümleştirmeyi kolaylaştırmak için özel olarak tasarlanmıştır. Daha fazla bilgi için bkz. Domain-Specific Dilini Özelleştirmek için Kod Yazma.
Uyarı
DSL Tanımları dosyasını güncelleştirdiğinizde çözümünüzü yeniden oluşturmadan önce Çözüm Gezgini araç çubuğundaki Tüm Şablonları Dönüştür'e tıklamayı unutmayın.
Makale başvurusu
| Bu etkiyi elde etmek için | Bu konuya bakın |
|---|---|
| Kullanıcının şeklin renk ve stil özelliklerini ayarlamasına izin verin. | Şekil veya bağlayıcı sınıfına sağ tıklayın, Görünürlüğü Arttır'ı seçin ve bir öğeye tıklayın. |
| Model öğesinin farklı sınıfları diyagramda benzer görünür ve ilk yükseklik ve genişlik, renk, araç ipuçları gibi özellikleri paylaşır. | Şekiller veya bağlayıcı sınıfları arasında devralma kullanın. Türetilmiş şekiller ve türetilmiş etki alanı sınıfları arasındaki eşlemeler, ebeveynlerin eşleme ayrıntılarını devralır. Alternatif olarak, farklı etki alanı sınıflarını aynı şekil sınıfına eşleyin. |
| Farklı şekil bağlamları tarafından bir model öğesi sınıfı görüntülenir. | Birden fazla şekil sınıfını aynı etki alanı sınıfına eşleyin. Çözümü oluştururken hata raporunu izleyin ve hangi şeklin kullanılacağına karar vermek için istenen kodu sağlayın. |
| Şekil rengi veya yazı tipi gibi diğer özellikler geçerli durumu gösterir. | Bkz . Şekilleri ve Bağlayıcıları Modeli Yansıtacak Şekilde Güncelleştirme. Kullanıma sunulan özellikleri güncelleştiren bir kural oluşturun. Bkz. Kurallar Model İçinde Değişiklikleri Yayma. Alternatif olarak, bağlantı okları veya yazı tipi gibi kullanıma sunulmayan özellikleri güncelleştirmek için OnAssociatedPropertyChanged() kullanın. |
| Şekil üzerindeki simge, durumu gösterecek şekilde değişir. | DSL Ayrıntıları penceresinde dekoratör eşlemesinin görünürlüğünü ayarlayın. Aynı konumda birkaç görüntü dekoratörü bulun. Bkz . Şekilleri ve Bağlayıcıları Modeli Yansıtacak Şekilde Güncelleştirme. Veya geçersiz kılın ImageField.GetDisplayImage(). içindeki ImageFieldörne bakın. |
| Herhangi bir şekil üzerine arka plan resmi ayarla | Bağlantılı ImageField eklemek için InitializeInstanceResources() öğesini geçersiz kılın. |
| Şekilleri herhangi bir derinliğe iç içe yerleştirme | Özyinelemeli bir ekleme ağacı ayarlayın. Şekilleri içerecek BoundsRules'ı tanımlayın. |
| Bir öğenin sınırındaki sabit noktalara bağlayıcılar ekleyin. | Diyagramdaki küçük bağlantı noktalarıyla temsil edilen ekli terminal öğelerini tanımlayın. Bağlantı noktalarını yerinde sabitlemek için BoundsRules kullanın. Görselleştirme ve Modelleme SDK'sı'ndaki Devre Diyagramı örneğine bakın. |
| Metin alanında diğer değerlerden türetilmiş bir değer görüntülenir. | Metin dekoratörünü Hesaplanan veya Özel Depolama etki alanı özelliğine eşleyin. Daha fazla bilgi için bkz. Hesaplanan ve Özel Depolama Özellikleri. |
| Değişiklikleri model öğeleri arasında veya şekiller arasında yayma | Bkz . Domain-Specific Dilinde Doğrulama. |
| Değişiklikleri mağaza dışındaki diğer Visual Studio uzantıları gibi kaynaklara yayın. | Bkz. Olay İşleyicileri Değişiklikleri Modelin Dışına Yayıyor. |
| Özellik penceresi, ilgili öğenin özelliklerini görüntüler. | Özellik Yönlendirme'yi ayarlayın. Bkz . Özellikler Penceresini Özelleştirme. |
| Özellik kategorileri | Özellikler penceresi kategoriler olarak adlandırılan bölümlere ayrılır. Etki alanı özelliklerinizin Kategorisini ayarlayın. Aynı kategori adına sahip özellikler aynı bölümde görünür. İlişki rolünün Kategorisini de ayarlayabilirsiniz. |
| Etki alanı özelliklerine kullanıcı erişimini denetleme | Bir etki alanı özelliğinin çalışma zamanında Özellikler penceresinde görünmemesi için Gözatılabilir özelliğini false olarak ayarlayın. Bunu yine de metin dekoratörleriyle eşleyebilirsiniz. Kullanıcı Arabirimi Salt Okunur mu? kullanıcıların bir etki alanı özelliğini değiştirmesini engeller. Etki alanı özelliğine program erişimi etkilenmez. |
| DSL'nizin model gezginindeki düğümlerin adını, simgesini ve görünürlüğünü değiştirin. | Bkz. Model Gezgini'ni özelleştirme. |
| Kopyalama, kesme ve yapıştırmayı etkinleştirme | DSL Gezgini'nde Düzenleyici düğümünün Kopya Yapıştırmayı Etkinleştir özelliğini ayarlayın. |
| Bir öğe kopyalandığında başvuru bağlantılarını ve hedeflerini kopyalayın. Örneğin, bir öğeye eklenmiş açıklamaları kopyalayın. | Kaynak rolün Kopyayı Yay özelliğini ayarlayın (DSL Tanımı diyagramındaki etki alanı ilişkisinin bir tarafındaki çizgiyle gösterilir). Daha karmaşık efektler elde etmek için ProcessOnCopy'yi geçersiz kılmak için kod yazın. Bkz . Kopyalama Davranışını Özelleştirme. |
| Bir öğe silindiğinde ilgili öğeleri silin, yeniden eşleştirin veya yeniden ilişkilendirin. | İlişki rolünün Yaymalar Delete değerini ayarlayın. Daha karmaşık efektler için, ShouldVisitRelationship sınıfındaki ShouldVisitRolePlayer ve MyDslDeleteClosure yöntemlerini DomainModel.cs'de tanımlayın ve geçersiz kılın. |
| Sürükleyip bırakma ve kopyalama işlemlerinde şekil düzeni ve görünümünü koruyun. | Şekilleri ve bağlayıcıları kopyalanan ElementGroupPrototypeöğesine ekleyin. Geçersiz kılmak için en uygun yöntem şudur: ElementOperations.CreateElementGroupPrototype()Bkz . Kopyalama Davranışını Özelleştirme. |
| Şekilleri, geçerli imleç konumu gibi seçili bir konuma yapıştırın. | Konuma özgü sürümünü kullanmak için ClipboardCommandSet.ProcessOnCopy()'yi geçersiz kılınız. Bkz. Kopyalama Davranışının Özelleştirilmesi. |
| Yapıştırmada ek bağlantılar oluşturma | ClipboardCommandSet.ProcessOnPasteCommand() metodunu geçersiz kılma |
| Bu diyagramdan, diğer DLL'lerden ve Windows öğelerinden sürükleyip bırakmayı etkinleştirin | Bkz Nasıl Yapılır: Sürükle ve Bırak İşleyicisi Ekleme |
| Bir şeklin veya aracın, bağlantı noktası gibi bir alt şekle, üst şekle sürükleniyor gibi sürüklenmesine izin verin. | Bırakılan nesneyi üst nesneye iletmek için hedef nesne sınıfına bir Öğe Birleştirme Yönergesi tanımlayın. Bkz. Öğe Oluşturma ve Taşımayı Özelleştirme. |
| Bir şeklin veya bir aracın, başka bir şekle sürüklenerek ek bağlantılar veya nesneler oluşturmasına izin verin. Örneğin, açıklamanın bağlanacağı bir öğeye bırakılmasına izin vermek için. | Hedef etki alanı sınıfında bir Öğe Birleştirme Yönergesi tanımlayın ve oluşturulacak bağlantıları tanımlayın. Karmaşık durumlarda özel kod ekleyebilirsiniz. Bkz Öğe Oluşturma ve Taşımayı Özelleştirme. |
| Tek bir araçla bir öğe grubu oluşturun. Örneğin, sabit bağlantı noktası kümesine sahip bir bileşen. | ToolboxHelper.cs araç kutusu başlatma yöntemini geçersiz kılın. Öğeleri ve bunların ilişki bağlantılarını içeren bir Öğe Grubu Prototipi (EGP) oluşturun. Bkz . Araçları ve Araç Kutusunu Özelleştirme. EGP'ye ana ve bağlantı noktası şekillerini ekleyin veya EGP örneği oluşturulurken bağlantı noktası şekillerini konumlandırmak için BoundsRules tanımlayın. |
| Birkaç ilişki türünü örneklemek için tek bir bağlantı aracı kullanın. | Bağlantı Oluşturucusu'na araç tarafından çağrılan Bağlantı Bağlantısı Yönergeleri'ni (LCD) ekleyin. LCD'ler, iki öğe türünden ilişkinin türünü belirler. Bunun öğelerin durumlarına bağlı olmasını sağlamak için özel kod ekleyebilirsiniz. Bkz . Araçları ve Araç Kutusunu Özelleştirme. |
| Yapışkan araçlar - Kullanıcı, ardı ardına birçok şekil veya bağlayıcı oluşturmak için herhangi bir araçta çift tıklayabilir. | DSL Gezgini'nde Editor düğümü seçin. Özellikler penceresinde Yapışkan Araç Kutusu Öğeleri Kullan seçeneğini ayarlayın. |
| Menü komutlarını tanımlama | Bkz . Nasıl yapılır: Standart Menü Komutunu Değiştirme |
| Modeli doğrulama kurallarıyla kısıtlama | Bkz . Domain-Specific Dilde Doğrulama |
| DSL'den kod, yapılandırma dosyaları veya belgeler oluşturun. | Domain-Specific Dilinden Kod Oluşturma |
| Modellerin dosyaya nasıl kaydedileceğini özelleştirin. | Bkz . Dosya Depolamayı ve XML Serileştirmesini Özelleştirme |
| Modelleri veritabanlarına veya başka bir medyaya kaydedin. |
YourLanguageDocData Geçersiz Kıl Bkz . Dosya Depolamayı ve XML Serileştirmesini Özelleştirme |
| Birden çok DLL'yi tek bir uygulamanın parçası olarak çalışacak şekilde tümleştirin. | Bkz . Visual Studio Modelbus kullanarak Modelleri Tümleştirme. |
| DSL'nizin üçüncü taraflar tarafından genişletilmesine izin verin ve uzantıyı kontrol edin. |
MEF kullanarak DSL'nizi genişletme DSL Kitaplığı kullanarak DSL'ler arasında Sınıf Paylaşımı Read-Only Segmentleri Oluşturmak için Kilitleme İlkesi Tanımlama |
İlgili içerik
- Domain-Specific Bir Dili Nasıl Tanımlanır
- Domain-Specific Dilini Özelleştirmek için Kod Yazma
- Visual Studio için Modelleme SDK'sı - Domain-Specific Dilleri
Uyarı
Metin Şablonu Dönüştürme bileşeni, Visual Studio uzantısı geliştirme iş yükünün bir parçası olarak otomatik olarak yüklenir. Bunu Visual Studio Yükleyicisi'nin Tek bileşenler sekmesinden SDK'lar, kitaplıklar ve çerçeveler kategorisinin altından da yükleyebilirsiniz. Tek tek bileşenler sekmesinden Modelleme SDK'sı bileşenini yükleyin.