RawFrame

IShape.RawFrame property

Devuelve o establece las propiedades del marco de forma sin formato. Lectura/escrituraIShapeFrame .

public IShapeFrame RawFrame { get; set; }

Ejemplos

El código que intenta asignar un marco indefinido a IShape.Frame no tiene sentido en el caso general (particularmente en el caso de que el GroupShape principal esté anidado de forma múltiple en otros GroupShape-s). Por ejemplo: o Dicho código puede conducir a situaciones poco claras. Por lo tanto, se agregaron restricciones para usar valores indefinidos para IShape.Frame. Los valores de x, y, ancho, alto, flipH, flipV y ángulo de rotación deben definirse (no float.NaN o NullableBool.NotDefined). El código de ejemplo anterior ahora lanza la excepción ArgumentException. Esto se aplica a estos casos de uso: Pero las propiedades del marco IShape.RawFrame pueden no estar definidas. Esto tiene sentido cuando la forma está vinculada a un marcador de posición. Luego, los valores de marco de forma indefinidos se anulan de la forma de marcador de posición principal. Si no hay una forma de marcador de posición principal para esa forma, esa forma usa valores predeterminados cuando evalúa el marco efectivo en función de su IShape.RawFrame. Los valores predeterminados son 0 y NullableBool.False para x, y, ancho, alto, flipH, flipV y ángulo de rotación. Por ejemplo:

IShape shape = ...;
shape.Frame = new ShapeFrame(float.NaN, float.NaN, float.NaN, float.NaN, NullableBool.NotDefined, NullableBool.NotDefined, float.NaN);
slide.Shapes.AddAutoShape(ShapeType.RoundCornerRectangle, float.NaN, float.NaN, float.NaN, float.NaN);
IShape shape = ...;
shape.Frame = ...; // no puede ser indefinido

IShapeCollection shapes = ...;
// Los parámetros x, y, ancho, alto no pueden ser flotantes.NaN:
{
    shapes.AddAudioFrameCD(...);
    shapes.AddAudioFrameEmbedded(...);
    shapes.AddAudioFrameLinked(...);
    shapes.AddAutoShape(...);
    shapes.AddChart(...);
    shapes.AddConnector(...);
    shapes.AddOleObjectFrame(...);
    shapes.AddPictureFrame(...);
    shapes.AddSmartArt(...);
    shapes.AddTable(...);
    shapes.AddVideoFrame(...);
    shapes.InsertAudioFrameEmbedded(...);
    shapes.InsertAudioFrameLinked(...);
    shapes.InsertAutoShape(...);
    shapes.InsertChart(...);
    shapes.InsertConnector(...);
    shapes.InsertOleObjectFrame(...);
    shapes.InsertPictureFrame(...);
    shapes.InsertTable(...);
    shapes.InsertVideoFrame(...);
}
IShape shape = ...; // la forma está vinculada al marcador de posición
shape.RawFrame = new ShapeFrame(float.NaN, float.NaN, 100, float.NaN, NullableBool.NotDefined, NullableBool.NotDefined, 0); // ahora la forma hereda los valores x, y, altura, flipH, flipV del marcador de posición y anula el ancho = 100 y el ángulo de rotación = 0.

Ver también