次の方法で共有


Shape.Tag プロパティ

更新 : 2007 年 11 月

ライン コントロールまたはシェイプ コントロールについてのデータを格納するオブジェクトを取得または設定します。

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

構文

'宣言
<BrowsableAttribute(True)> _
Public Property Tag As Object
'使用
Dim instance As Shape
Dim value As Object

value = instance.Tag

instance.Tag = value
[BrowsableAttribute(true)]
public Object Tag { get; set; }
[BrowsableAttribute(true)]
public:
property Object^ Tag {
    Object^ get ();
    void set (Object^ value);
}
public function get Tag () : Object
public function set Tag (value : Object)

プロパティ値

型 : System.Object

コントロールに関連付けるデータを含む Object。既定値は null 参照 (Visual Basic では Nothing) です。

解説

このプロパティには、Object クラスから派生した任意の型を割り当てることができます。Tag プロパティが Windows フォーム デザイナを使用して設定されている場合は、テキストだけを割り当てることができます。

Tag プロパティの一般的な使い方は、コントロールと密接に関連するデータを格納することです。たとえば、ネットワーク図のオブジェクトを表すシェイプ コントロールがある場合は、そのオブジェクトに関する情報を含む DataSet を Tag プロパティに格納すると、データにすばやくアクセスできます。

Tag プロパティを使用して、NodeInfo クラスのインスタンスを新しいフォームに渡す方法を次の例に示します。この例では、RectangleShape1 という名前の RectangleShape コントロールがフォーム上に配置され、networkForm という名前の 2 番目のフォームがあり、NodeInfo クラスがプロジェクトに定義されている必要があります。

Private Sub Form1_Load(ByVal sender As System.Object, _
 ByVal e As System.EventArgs) Handles MyBase.Load
    ' Declare an instance of a NodeInfo class.
    Dim MyNode As New NodeInfo
    ' Assign the instance to the Tag property.
    RectangleShape1.Tag = MyNode
End Sub

Private Sub RectangleShape1_Click(ByVal sender As System.Object, _
  ByVal e As System.EventArgs) Handles RectangleShape1.Click
    ' Declare an instance of a networkForm form.
    Dim networkForm As New Form()
    ' Assign the Tag property of the RectangleShape to the new form.
    ' This passes the MyNode instance of the NodeInfo class to the
    ' form.
    networkForm.Tag = RectangleShape1.Tag
    ' Show the new form.
    networkForm.Show()
End Sub
private void Form1_Load(System.Object sender, System.EventArgs e)
{
    // Declare an instance of a NodeInfo class.
    NodeInfo MyNode = new NodeInfo();
    // Assign the instance to the Tag property.
    rectangleShape1.Tag = MyNode;
}

private void rectangleShape1_Click(System.Object sender, System.EventArgs e)
{
    // Declare an instance of a networkForm form.
    Form networkForm = new Form();
    // Assign the Tag property of the RectangleShape to the new form.
    // This passes the MyNode instance of the NodeInfo class to the
    // form.
    networkForm.Tag = rectangleShape1.Tag;
    // Show the new form.
    networkForm.Show();
}

アクセス許可

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

参照

参照

Shape クラス

Shape メンバ

Microsoft.VisualBasic.PowerPacks 名前空間

その他の技術情報

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

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

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