次の方法で共有


ShapeCollection.GetChildIndex メソッド (Shape, Boolean)

ShapeCollectionで指定した Shape のインデックスを取得し、指定した ShapeShapeCollection にない場合に必要に応じて例外を発生させます。

名前空間:  Microsoft.VisualBasic.PowerPacks
アセンブリ:  Microsoft.VisualBasic.PowerPacks.Vs (Microsoft.VisualBasic.PowerPacks.Vs.dll 内)

構文

'宣言
Public Function GetChildIndex ( _
    child As Shape, _
    throwException As Boolean _
) As Integer
public int GetChildIndex(
    Shape child,
    bool throwException
)
public:
int GetChildIndex(
    Shape^ child, 
    bool throwException
)
member GetChildIndex : 
        child:Shape * 
        throwException:bool -> int
public function GetChildIndex(
    child : Shape, 
    throwException : boolean
) : int

パラメーター

  • throwException
    型 : Boolean

    child パラメーターで指定した ShapeShapeCollection 内のコントロールでないときに例外をスローする場合は true。それ以外の場合は false。

戻り値

型 : Int32
ShapeCollection 内の指定された Shape の場所を表す 0 から始まるインデックス値。指定した ShapeShapeCollection で見つからなかった場合は -1。

例外

例外 条件
ArgumentException

child 図形が ShapeCollection になく、throwException パラメーター値が true です。

解説

インデックスは、図形がコレクションに追加された順序を表します。 図形がコレクションから削除された場合、シェイプのインデックスは再割り当てされます。

throwException パラメーターが false の場合だけ戻り値 -1 が返されます。

次のコード例は ShapeCollectionShape の位置を取得するために GetChildIndex のメソッドを使用する方法を示します。 この例では、フォームの少なくとも OvalShape の 2 種類のコントロールが必要です。

Private Sub OvalShape1_Click() Handles OvalShape1.Click
    Dim i As Integer 
    ' Find the index for OvalShape1.
    i = OvalShape1.Parent.Shapes.GetChildIndex(OvalShape2, False)
    ' If the shape is not in the collection, display a message. 
    If i = -1 Then
        MsgBox("OvalShape2 is not in this collection.")
    Else
        MsgBox("The index for OvalShape2 is " & CStr(i))
    End If 
End Sub
private void ovalShape1_Click(System.Object sender, System.EventArgs e)
{
    int i;
    // Find the index for OvalShape1.
    i = ovalShape1.Parent.Shapes.GetChildIndex(ovalShape2, false);
    // If the shape is not in the collection, display a message. 
    if (i==-1)
    {
        MessageBox.Show("ovalShape2 is not in this collection.");
    }
    else
    {
        String index;
        index = i.ToString();
        MessageBox.Show("The index for ovalShape2 is " + index);
    }
}

.NET Framework セキュリティ

  • 直前の呼び出し元に対する完全な信頼。このメンバーは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。

参照

関連項目

ShapeCollection クラス

GetChildIndex オーバーロード

Microsoft.VisualBasic.PowerPacks 名前空間

IndexOf

その他の技術情報

ライン コントロールとシェイプ コントロールの概要 (Visual Studio)

方法 : LineShape コントロールを使用して線を描画する (Visual Studio)

方法 : OvalShape コントロールおよび RectangleShape コントロールを使用して図形を描画する (Visual Studio)