В моем пользовательском инструменте DSL я хочу, чтобы в его проводнике был удален узел, который нельзя удалить. Кроме этого, я хочу, чтобы он был как обычный узел. В основном то, что я хочу, это узел, как Xml сериализации поведения в DSL Explorer:Постоянный узел в проводнике DSL
Через использование отражателя на классе XmlSerializationDefinitionSerializer в сборочном I Microsoft.VisualStudio.Modeling.Sdk.DslDefinition.dll «Я обнаружил, что это просто производная от DomainClass, поэтому нет ничего (явно) особого.
я определил DomainClass, который функционирует как узел, и правая кнопка мыши это позволяет мне добавить подузлы именно так, как я хочу работать, я просто не могу избавиться от этого выбора меню Delete:
Delete context menu item illustration http://img705.imageshack.us/img705/9033/validators.png
Я пробовал все, что я могу думать ... Я установить свойство сеттер в частном порядке, он получает около того, я установил кратность в 1..1, что не имеет эффект, отличный от дачи ошибок, когда узел «Validators» отсутствует ... Я просмотрел все свойства как для DomainClass, так и для DomainRelationship между корневой моделью и классом Domain Validators, и ни один из них, похоже, не справляется с этим , Я также просмотрел все в узле Explorer Explorer в окне DSL Explorer. Я полностью в тупике. Кто-нибудь знает, как это сделать?
+1. Красиво сделано. Мне нравятся инструменты DSL и все хорошо, что вы ответили на вопрос. –