Establecer una imagen de fondo en un diagramaSetting a Background Image on a Diagram

En el SDK de visualización y modelado de Visual StudioVisual Studio puede establecer la imagen de fondo de un diseñador generado usando código personalizado.In Visual StudioVisual Studio Visualization and Modeling SDK, you can set the background image for a generated designer by using custom code.

Establecer la imagen de fondoSetting the background image

Para establecer una imagen de fondo para un diseñador generadoTo set a background image for a generated designer

  1. Copie el archivo de imagen que quiere usar como fondo del diagrama en el directorio Dsl\Resources para el proyecto actual.Copy the image file that you want to use as the diagram's background into the Dsl\Resources directory for the current project.

  2. En el Explorador de soluciones, haga clic en la carpeta Dsl\Resources, seleccione agregary, a continuación, haga clic en elemento existente.In Solution Explorer, right-click the Dsl\Resources folder, point to Add, and then click Existing Item.

  3. En el Agregar elemento existente cuadro de diálogo, busque la carpeta Dsl\Resources.In the Add Existing Item dialog box, browse to the Dsl\Resources folder.

  4. En el archivos de tipo lista, haga clic en archivos de imagen.In the Files of type list, click Image Files.

  5. Haga clic en el archivo de imagen que ha copiado en el directorio y, a continuación, haga clic en agregar.Click the image file that you copied to the directory, and then click Add.

  6. Haga clic en Dsl y haga clic en propiedades para abrir las propiedades del proyecto ADSL.Right-click Dsl, and click Properties to open the properties of the Dsl project.

  7. En el recursos , haga clic en este proyecto no contiene un archivo de recursos predeterminado. Haga clic aquí para crear uno.On the Resources tab, click This project does not contain a default resources file. Click here to create one.

  8. Agregar el archivo de imagen para el archivo de recursos, arrastre la imagen de el Explorador de soluciones en la ventana de recursos.Add the image file to the resource file by dragging the picture from Solution Explorer into the resources window.

  9. Abra el menú Archivo y haga clic en la opción para guardar las propiedades del proyecto.Open the File menu, and click the option to save the project properties.

  10. Compruebe que el archivo Dsl\Properties\Resources.resx existe y que tiene el archivo Resources.Designer.cs debajo de él.Verify that the file Dsl\Properties\Resources.resx exists and has the file Resources.Designer.cs under it.

  11. Si falta Resources.Designer.cs, haga clic en el archivo Resources.resx en el Explorador de soluciones.If Resources.Designer.cs is missing, click the file Resources.resx in Solution Explorer.

  12. En el propiedades ventana, establezca el Custom Tool propiedad ResXFileCodeGenerator.In the Properties window, set the Custom Tool property to ResXFileCodeGenerator.

  13. En el Explorador de soluciones, haga clic en el proyecto de Dsl, seleccione agregary haga clic en nueva carpeta.In Solution Explorer, right-click the Dsl project, point to Add, and click New Folder.

  14. Nombre de la carpeta personalizado.Name the folder Custom.

  15. Haga clic en la carpeta personalizada, seleccione agregary haga clic en nuevo elemento.Right-click the Custom folder, point to Add, and click New Item.

  16. En el Agregar nuevo elemento cuadro de diálogo, en la plantillas lista, haga clic en archivo de código.In the Add New Item dialog box, in the Templates list, click Code File.

  17. En el nombre , escriba BackgroundImage.csy haga clic en agregar.In the Name box, type BackgroundImage.cs, and click Add.

  18. Copie el código siguiente en el archivo BackgroundImage.cs y ajuste el espacio de nombres, el nombre de la clase de diagrama y el nombre del recurso de archivo de imagen.Copy the following code to the BackgroundImage.cs file, adjusting namespace, diagram class name, and image file resource name.

    Reemplace "MyDiagramClass" por el nombre de la clase parcial de diagrama definida en Dsl\GeneratedCode\Diagrams.cs.Replace "MyDiagramClass" with the name of the diagram partial class that is defined in Dsl\GeneratedCode\Diagrams.cs. También puede recuperar el espacio de nombres correcto del archivo Dsl\GeneratedCode\Diagrams.cs.You can also retrieve the correct namespace from the file 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 obtener más información acerca de cómo personalizar el modelo de código de programa, consulte navegar y actualizar un modelo de código de programa.For more information about customizing the model with program code, see Navigating and Updating a Model in Program Code.

Vea tambiénSee Also

Nota

En Visual Studio de 2017, el SDK de transformación de plantilla de texto y el SDK de modelado de Visual Studio se instalan automáticamente al instalar características específicas de Visual Studio.In Visual Studio 2017, the Text Template Transformation SDK and the Visual Studio Modeling SDK are installed automatically when you install specific features of Visual Studio. Para obtener más información, consulte esta entrada de blog.For more details, see this blog post.