Exportar (0) Imprimir
Expandir todo
Este artículo se tradujo de forma manual. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

Actualizar las personalizaciones de la Cinta en los proyectos de Office migrados a .NET Framework 4 o .NET Framework 4.5

Si el proyecto contiene una personalización de la cinta de opciones creada mediante el elemento de proyecto Cinta (diseñador visual) , debe realizar los siguientes cambios en el código del proyecto si la versión de.NET Framework de destino pasa a .NET Framework 4 o .NET Framework 4,5:

  • Modifique el código de cinta generado.

  • Modifique cualquier código que cree instancias del control Ribbon en tiempo de ejecución, administre los eventos de Ribbon o establezca la posición de un componente de Ribbon mediante programación.

Si la versión de.NET Framework de destino del proyecto pasa a ser .NET Framework 4 o .NET Framework 4,5, deberá cambiar el código generado para el elemento Cinta siguiendo estos pasos. Los archivos de código que necesite actualizar dependen del lenguaje de programación y de la forma en que se creó el proyecto:

  • En proyectos de Visual Basic, o en Visual C# creados en Visual Studio 2012 u Visual Studio 2010 realiza todos los pasos en la Cinta archivo de código subyacente (YourRibbonItem. Designer.cs o YourRibbonItem. Designer.vb). Para ver el archivo de código subyacente en los proyectos de Visual Basic, haga clic en el botón Mostrar todos los archivos en el Explorador de soluciones.

  • En Visual C# creados en Visual Studio 2008 y actualizados a Visual Studio 2013, siga los dos primeros pasos en el archivo de código de la cinta (YourRibbonItem.cs o YourRibbonItem.vb), y realizar los pasos restantes en la Cinta archivo de código subyacente.

Para cambiar el código de cinta generado

  1. Modifique la declaración de la clase Ribbon de modo que derive de Microsoft.Office.Tools.Ribbon.RibbonBase en lugar de Microsoft.Office.Tools.Ribbon.OfficeRibbon.

  2. Modifique el constructor de la clase Ribbon tal y como se muestra a continuación. Si ha agregado código propio al constructor, no lo cambie. En proyectos de Visual Basic, modifique únicamente el constructor sin parámetros. Omita el otro constructor.

    En el siguiente ejemplo de código, se muestra el constructor predeterminado de una clase Ribbon en un proyecto destinado a .NET Framework 3.5.

    public Ribbon1()
    {
        InitializeComponent();
    }
    

    El ejemplo de código siguiente muestra el constructor predeterminado de una clase Ribbon en un proyecto destinado a .NET Framework 4 o .NET Framework 4,5.

    public Ribbon1()
        : base(Globals.Factory.GetRibbonFactory())
    {
        InitializeComponent();
    }
    
  3. En el método InitializeComponent, modifique cualquier código que construya un control Ribbon para que utilice uno de los métodos auxiliares del objeto RibbonFactory.

    Nota Nota

    En proyectos de Visual C#, debe expandir el área denominada Component Designer generated code para ver el método InitializeComponent.

    Por ejemplo, supongamos que el archivo contiene la siguiente línea de código que crea una instancia de RibbonButton denominada button1 en un proyecto destinado a .NET Framework 3.5.

    this.button1 = new Microsoft.Office.Tools.Ribbon.RibbonButton();
    

    En un proyecto destinado a .NET Framework 4 o .NET Framework 4,5, debe utilizar el siguiente código.

    Me.button1 = Me.Factory.CreateRibbonButton()
    

    this.button1 = this.Factory.CreateRibbonButton();
    

    Para obtener una lista completa de los métodos auxiliares para los controles Ribbon, vea Crear instancias de controles Ribbon.

  4. En proyectos de Visual C#, modifique cualquier línea de código en el método InitializeComponent que use un delegado de EventHandler<TEventArgs> para que utilice un delegado de Ribbon concreto.

    Por ejemplo, supongamos que el archivo contiene la siguiente línea de código que administra el evento RibbonButton.Click en un proyecto destinado a .NET Framework 3.5.

    this.button1.Click += new System.EventHandler<Microsoft.Office.Tools.Ribbon.RibbonControlEventArgs>(
        this.button1_Click);
    

    En un proyecto destinado a .NET Framework 4 o .NET Framework 4,5, debe utilizar el siguiente código.

    this.button1.Click += new Microsoft.Office.Tools.Ribbon.RibbonControlEventHandler(
        this.button1_Click);
    

    Para obtener una lista completa de los delegados de Ribbon, Controlar los eventos de Ribbon.

  5. En proyectos de Visual Basic, busque la clase ThisRibbonCollection al final del archivo. Modifique la declaración de esta clase de modo que ya no herede de Microsoft.Office.Tools.Ribbon.RibbonReadOnlyCollection.

Debe modificar cualquier código que cree dinámicamente instancias de los controles Ribbon. En proyectos destinados a .NET Framework 3.5, los controles Ribbon son clases de las que se pueden crear instancias directamente en determinados escenarios. En proyectos destinados a .NET Framework 4 o .NET Framework 4,5, estos controles son interfaces de las que no se pueden crear instancias directamente. Debe crear los controles mediante métodos proporcionados por el objeto RibbonFactory.

Existen dos maneras de obtener acceso al objeto RibbonFactory:

  • Mediante la propiedad Factory de la clase Ribbon. Utilice este enfoque para código en la clase Ribbon.

  • Mediante el método Globals.Factory.GetRibbonFactory. Utilice este enfoque para código fuera de la clase Ribbon. Para obtener más información sobre la clase Globals, vea Acceso global a objetos en los proyectos de Office.

El ejemplo de código siguiente muestra cómo crear un RibbonButton en una clase Ribbon en un proyecto destinado a .NET Framework 4 o .NET Framework 4,5.

Microsoft.Office.Tools.Ribbon.RibbonButton button =
    this.Factory.CreateRibbonButton();

La tabla siguiente muestra los controles que puede crear mediante programación y el método desea utilizar para crear controles en proyectos destinados a .NET Framework 4 o .NET Framework 4,5.

Debe modificar cualquier código que controle los eventos de los controles Ribbon. En proyectos destinados a .NET Framework 3.5, estos eventos los controla el delegado genérico EventHandler<TEventArgs>. En proyectos destinados a .NET Framework 4 o .NET Framework 4,5, estos eventos ahora son otros delegados los que controlan.

La tabla siguiente muestra los eventos de Ribbon y los delegados asociados a ellos en proyectos destinados a .NET Framework 4 o .NET Framework 4,5.

Debe modificar cualquier código que establezca la posición de los grupos, pestañas o controles de Ribbon. En proyectos destinados a .NET Framework 3.5, puede utilizar los métodos BeforeOfficeId y AfterOfficeId de la clase Microsoft.Office.Tools.Ribbon.RibbonPosition estática para asignar la propiedad Position de un grupo, una pestaña o un control. En proyectos destinados a .NET Framework 4 o .NET Framework 4,5, debe tener acceso a estos métodos mediante la propiedad RibbonPosition proporcionada por el objeto RibbonFactory .

Existen dos maneras de obtener acceso al objeto RibbonFactory:

  • Mediante la propiedad Factory de la clase Ribbon. Utilice este enfoque para código en la clase Ribbon.

  • Mediante el método Globals.Factory.GetRibbonFactory. Utilice este enfoque para código fuera de la clase Ribbon. Para obtener más información sobre la clase Globals, vea Acceso global a objetos en los proyectos de Office.

En el siguiente ejemplo de código, se muestra cómo establecer la propiedad Position de una pestaña de una clase Ribbon en un proyecto destinado a .NET Framework 3.5.

this.tab1.Position = RibbonPosition.AfterOfficeId("TabHome");

En el siguiente ejemplo de código, se muestra la misma tarea en un proyecto destinado a .NET Framework 4.

this.tab1.Position = this.Factory.RibbonPosition.AfterOfficeId("TabHome");

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft