ControlCollection.GetShapeForControl Method
Gets the underlying Shape for the specified control.
Namespace: Microsoft.Office.Tools.Word
Assembly: Microsoft.Office.Tools.Word (in Microsoft.Office.Tools.Word.dll)
Syntax
'Declaration
Function GetShapeForControl ( _
control As Control _
) As Shape
Shape GetShapeForControl(
Control control
)
Parameters
control
Type: System.Windows.Forms.ControlThe control in the ControlCollection instance from which you want to get the Shape.
Return Value
Type: Shape
The underlying Shape for the specified control.
Remarks
If the wrapping style of the control is set to In line with text, the GetShapeForControl method returns nulla null reference (Nothing in Visual Basic).
Examples
The following code example adds a Button to the document, and then uses the GetShapeForControl method to get the location of the control from its underlying Shape.
Private Sub WordGetShape()
Dim testButton As Microsoft.Office.Tools.Word.Controls.Button = _
Me.Controls.AddButton(10, 10, 50, 25, "testButton")
Dim buttonShape As Microsoft.Office.Interop.Word.Shape = _
Me.Controls.GetShapeForControl(testButton)
If buttonShape IsNot Nothing Then
MessageBox.Show("The following properties can be cached in the" & _
vbCrLf & "document to enable you to recreate the control:" _
& vbCrLf & vbCrLf & "Height: " & buttonShape.Height _
& vbCrLf & "Width: " & buttonShape.Width _
& vbCrLf & "Top: " & buttonShape.Top _
& vbCrLf & "Left: " & buttonShape.Left)
End If
End Sub
private void WordGetShape()
{
Microsoft.Office.Tools.Word.Controls.Button testButton =
this.Controls.AddButton(10, 10, 50, 25, "testButton");
Microsoft.Office.Interop.Word.Shape buttonShape =
this.Controls.GetShapeForControl(testButton);
if (buttonShape != null)
{
MessageBox.Show("The following properties can be cached in the" +
"\n" + "document to enable you to recreate the control:" +
"\n\n" + "Height: " + buttonShape.Height.ToString() +
"\n" + "Width: " + buttonShape.Width.ToString() + "\n" +
"Top: " + buttonShape.Top.ToString() + "\n" +
"Left: " + buttonShape.Left.ToString());
}
}
.NET Framework Security
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries from Partially Trusted Code.