次の方法で共有


Shape.Parent プロパティ

更新 : 2007 年 11 月

ライン コントロールまたはシェイプ コントロールの親コンテナを取得または設定します。

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

構文

'宣言
<BrowsableAttribute(False)> _
Public Property Parent As ShapeContainer
'使用
Dim instance As Shape
Dim value As ShapeContainer

value = instance.Parent

instance.Parent = value
[BrowsableAttribute(false)]
public ShapeContainer Parent { get; set; }
[BrowsableAttribute(false)]
public:
property ShapeContainer^ Parent {
    ShapeContainer^ get ();
    void set (ShapeContainer^ value);
}
public function get Parent () : ShapeContainer
public function set Parent (value : ShapeContainer)

プロパティ値

型 : Microsoft.VisualBasic.PowerPacks.ShapeContainer

コントロールの親またはコンテナを表す ShapeContainer

解説

LineShape コントロール、OvalShape コントロール、または RectangleShape コントロールは、ライン コントロールとシェイプ コントロールのキャンバスとして機能する ShapeContainer オブジェクトにのみ格納できます。

デザイン時に線または図形をフォームまたはコンテナに追加すると、ShapeContainer が自動的に作成されます (存在しない場合)。線または図形の Parent プロパティは、その ShapeContainer に設定されます。ShapeContainer の Parent プロパティは、線または図形が追加されたフォームまたはコンテナ コントロールに設定されます。

実行時に New メソッドを使用して線または図形を作成する場合は、その Parent プロパティを ShapeContainer に設定する必要があります。フォームまたはコンテナの ShapeContainer が既に存在する場合は、Parent プロパティをその ShapeContainer に設定する必要があります。ShapeContainer が存在しない場合は、New メソッドを使用して ShapeContainer を作成し、その Parent プロパティをフォームまたはコンテナに設定できます。

メモ :

各フォームまたはコンテナに対して複数の ShapeContainer を作成しないでください。予期しない動作が発生する可能性があります。フォームまたはコンテナにデザイン時にライン コントロールまたはシェイプ コントロールを追加する前に、プログラムでこれらを作成するコードを記述していた場合は、デザイナによって作成された ShapeContainer を使用するようにコードを変更する必要があります。

既存の ShapeContainer の有無を確認し、New メソッドを使用して実行時に作成された OvalShape コントロールの Parent プロパティを設定する方法を次の例に示します。

Dim NewOval As New OvalShape
Dim i As Integer
Dim found As Boolean
' Loop through the Controls collection.
For i = 0 To Me.Controls.Count - 1
    ' If a ShapeContainer is found, make it the parent.
    If TypeOf Controls.Item(i) Is ShapeContainer Then
        NewOval.Parent = Controls.Item(i)
        found = True
        Exit For
    End If
Next
' If no ShapeContainer is found, create one and set the parents.
If found = False Then
    Dim sc As New ShapeContainer
    sc.Parent = Me
    NewOval.Parent = sc
End If
NewOval.Size = New Size(200, 300)
OvalShape NewOval = new OvalShape();
int i;
bool found = false;
// Loop through the Controls collection.
for (i = 0; i < this.Controls.Count; i++)
{
    // If a ShapeContainer is found, make it the parent.
    if (this.Controls[i] is ShapeContainer)
    {
        NewOval.Parent = ((ShapeContainer)Controls[i]);
        found = true;
        break;
    }
}
// If no ShapeContainer is found, create one and set the parents.
if (found == false)
{
    ShapeContainer sc = new ShapeContainer();
    sc.Parent = this;
    NewOval.Parent = sc;
}
NewOval.Size = new Size(200, 300);
found = true;

アクセス許可

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

参照

参照

Shape クラス

Shape メンバ

Microsoft.VisualBasic.PowerPacks 名前空間

その他の技術情報

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

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

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