Definindo uma imagem de plano de fundo em um diagrama
No SDK de Visualização e Modelagem do Visual Studio, você pode configurar a imagem de plano de fundo para um designer gerado usando código personalizado.
Configurando a imagem de plano de fundo
Para configurar uma imagem de plano de fundo de um designer gerado
Copie o arquivo de imagem que você deseja usar como plano de fundo do diagrama no diretório Dsl\Resources do projeto atual.
No Gerenciador de Soluções, clique com o botão direito do mouse na pasta Dsl\Resources, aponte para Adicionar e clique em Item Existente.
Na caixa de diálogo Adicionar Item Existente, navegue até a pasta Dsl\Resources.
Na lista Arquivos do tipo, clique em Arquivos de Imagem.
Clique no arquivo de imagem que você copiou no diretório e clique em Adicionar.
Clique com o botão direito do mouse em Dsl e em Propriedades para abrir as propriedades do projeto Dsl.
Na guia Recursos, clique em Este projeto não contém um arquivo de recursos padrão. Clique aqui para criar um.
Adicione o arquivo de imagem ao arquivo de recursos arrastando a imagem do Gerenciador de Soluções para a janela de recursos.
Abra o menu Arquivo e clique na opção para salvar as propriedades do projeto.
Verifique se o arquivo Dsl\Properties\Resources.resx existe e se possui o arquivo Resources.Designer.cs nele.
Se Resources.Designer.cs estiver ausente, clique no arquivo Resources.resx no Gerenciador de Soluções.
Na janela Propriedades, configure a propriedade Custom Tool como ResXFileCodeGenerator.
No Gerenciador de Soluções, clique com o botão direito do mouse no projeto Dsl, aponte para Adicionar e clique em Nova Pasta.
Nomeie a pasta como Personalizado.
Clique com o botão direito do mouse na pasta Personalizado, aponte para Adicionar e clique em Novo Item.
Na caixa de diálogo Adicionar Novo Item, na lista Modelos, clique em Arquivo de Código.
Na caixa Nome, digite BackgroundImage.cs e clique em Adicionar.
Copie o código a seguir no arquivo BackgroundImage.cs, ajustando o namespace, o nome da classe do diagrama e o nome do recurso do arquivo de imagem.
Substitua "MyDiagramClass" pelo nome da classe parcial do diagrama definido em Dsl\GeneratedCode\Diagrams.cs. Também é possível recuperar o namespace correto do arquivo Dsl\GeneratedCode\Diagrams.cs.
using System; using Microsoft.VisualStudio.Modeling.Diagrams; // Fix the namespace: namespace Fabrikam.MyLanguage { // Fix the Diagram Class name - get it from GeneratedCode\Diagram.cs public partial class Language29Diagram { protected override void InitializeInstanceResources() { // Fix the Resources namespace and the Image resource name: ImageField backgroundField = new ImageField("background", Fabrikam.MyLanguage.Properties.Resources.MyPicture); backgroundField.DefaultFocusable = false; backgroundField.DefaultSelectable = false; backgroundField.DefaultVisibility = true; backgroundField.DefaultUnscaled = false; shapeFields.Add(backgroundField); backgroundField.AnchoringBehavior .SetTopAnchor(AnchoringBehavior.Edge.Top, 0.01); backgroundField.AnchoringBehavior .SetLeftAnchor(AnchoringBehavior.Edge.Left, 0.01); backgroundField.AnchoringBehavior .SetRightAnchor(AnchoringBehavior.Edge.Right, 0.01); backgroundField.AnchoringBehavior .SetBottomAnchor(AnchoringBehavior.Edge.Bottom, 0.01); base.InitializeInstanceResources(); } } }
Para obter mais informações sobre como personalizar o modelo com o código do programa, consulte Navegando e atualizando um modelo no código do programa.
Consulte também
Conceitos
Personalizando campos de texto e imagem
Navegando e atualizando um modelo no código do programa
Outros recursos
Escrevendo código para personalizar uma linguagem específica do domínio