Cómo: Convertir objetos devueltos por aplicaciones de Office
Actualización: noviembre 2007
Cuando se escribe código administrado, se debe especificar de forma predeterminada un tipo de objeto. Sin embargo, muchos métodos y propiedades de los ensamblados de interoperabilidad primarios de Microsoft Office devuelven el tipo Object, porque tienen la capacidad de devolver varios tipos diferentes. Cuando se devuelve el objeto, se debe convertir explícitamente (en Visual Basic o en C#) al tipo correcto. La conversión del objeto proporciona la habilitación de IntelliSense para el objeto en el Editor de código.
Para obtener información sobre las conversiones en Visual Basic, vea Conversiones implícitas y explícitas y CType (Función). Para obtener información sobre las conversiones en C#, vea Operador () (Referencia de C#).
El procedimiento siguiente constituye un ejemplo de conversión de un objeto devuelto por una aplicación de Microsoft Office a un tipo específico para su utilización en código administrado. En este ejemplo se utiliza una personalización de nivel de documento para Microsoft Office Excel.
Para convertir un objeto a un tipo específico
Agregue un control NamedRange a la celda A1.
Dim NamedRange1 As Microsoft.Office.Tools.Excel.NamedRange = _ Me.Controls.AddNamedRange(Me.Range("A1"), "NamedRange1")
Microsoft.Office.Tools.Excel.NamedRange NamedRange1 = this.Controls.AddNamedRange(this.Range["A1", missing], "NamedRange1");
Convierta el objeto devuelto desde la propiedad ColumnWidth del rango con nombre en un objeto Double y asígnele una variable.
Aunque el valor subyacente de la propiedad ColumnWidth es un valor decimal, la propiedad devuelve el valor como un tipo Object. Debe convertir Object en Double para trabajar directamente con el valor decimal.
Dim width As Double = CType(NamedRange1.ColumnWidth, Double)
double width = (double)NamedRange1.ColumnWidth;
Muestre el ancho de columna del control NamedRange en un cuadro de diálogo.
MessageBox.Show("Column width: " & width.ToString())
MessageBox.Show("Column width: " + width.ToString());
Vea también
Conceptos
Escribir código en soluciones de Office
Código administrado y programación de soluciones de Office con Visual Studio
Descripción de los parámetros opcionales en las soluciones de Office