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;
アクセス許可
- 直前の呼び出し元に対する完全な信頼。このメンバは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。
参照
参照
Microsoft.VisualBasic.PowerPacks 名前空間
その他の技術情報
方法 : LineShape コントロールを使用して線を描画する (Visual Studio)
方法 : OvalShape コントロールおよび RectangleShape コントロールを使用して図形を描画する (Visual Studio)