NodeLabelEditEventArgs Klasse

Definition

Stellt Daten für das BeforeLabelEdit-Ereignis und das AfterLabelEdit-Ereignis bereit.Provides data for the BeforeLabelEdit and AfterLabelEdit events.

public ref class NodeLabelEditEventArgs : EventArgs
public class NodeLabelEditEventArgs : EventArgs
type NodeLabelEditEventArgs = class
    inherit EventArgs
Public Class NodeLabelEditEventArgs
Inherits EventArgs
Vererbung
NodeLabelEditEventArgs

Beispiele

Im folgenden Beispiel kann der Benutzer nicht Stamm Struktur Knoten mithilfe eines ContextMenubearbeiten.The following example allows the user to edit nonroot tree nodes by using a ContextMenu. Wenn der Benutzer mit der rechten Maustaste auf die TreeNode Maus klickt, wird der an dieser Position bestimmt und in mySelectedNodeeiner Variablen mit dem Namen gespeichert.When the user right clicks the mouse, the TreeNode at that position is determined and stored in a variable named mySelectedNode. Wenn ein nicht Stamm Struktur Knoten ausgewählt wurde, wird er in einen bearbeitbaren Zustand versetzt, sodass der Benutzer die Knoten Bezeichnung bearbeiten kann.If a nonroot tree node was selected, it is put into an editable state, allowing the user to edit the node label. Nachdem der Benutzer die Bearbeitung der Struktur Knoten Bezeichnung beendet hat, wird der neue Beschriftungs Text ausgewertet und gespeichert.After the user stops editing the tree node label, the new label text is evaluated and saved. In diesem Beispiel werden mehrere Zeichen im Bezeichnungs Text als ungültig eingestuft.For this example, several characters are considered not valid in the label text. Wenn eines der ungültigen Zeichen in der Bezeichnungs Zeichenfolge enthalten ist oder die Zeichenfolge leer ist, wird der Benutzer über den Fehler benachrichtigt, und die Bezeichnung wird an den vorherigen Text zurückgegeben.If one of the invalid characters is in the label string, or the string is empty, the user is notified of the error and the label is returned to its previous text.

   /* Get the tree node under the mouse pointer and 
      save it in the mySelectedNode variable. */
private:
   void treeView1_MouseDown( Object^ /*sender*/, System::Windows::Forms::MouseEventArgs^ e )
   {
      mySelectedNode = treeView1->GetNodeAt( e->X, e->Y );
   }

   void menuItem1_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      if ( mySelectedNode != nullptr && mySelectedNode->Parent != nullptr )
      {
         treeView1->SelectedNode = mySelectedNode;
         treeView1->LabelEdit = true;
         if (  !mySelectedNode->IsEditing )
         {
            mySelectedNode->BeginEdit();
         }
      }
      else
      {
         MessageBox::Show( String::Concat( "No tree node selected or selected node is a root node.\n",
            "Editing of root nodes is not allowed." ), "Invalid selection" );
      }
   }

   void treeView1_AfterLabelEdit( Object^ /*sender*/,
      System::Windows::Forms::NodeLabelEditEventArgs^ e )
   {
      if ( e->Label != nullptr )
      {
         if ( e->Label->Length > 0 )
         {
            array<Char>^ temp0 = {'@','.',',','!'};
            if ( e->Label->IndexOfAny( temp0 ) == -1 )
            {
               
               // Stop editing without canceling the label change.
               e->Node->EndEdit( false );
            }
            else
            {
               /* Cancel the label edit action, inform the user, and 
                  place the node in edit mode again. */
               e->CancelEdit = true;
               MessageBox::Show( String::Concat( "Invalid tree node label.\n",
                  "The invalid characters are: '@','.', ',', '!'" ),
                  "Node Label Edit" );
               e->Node->BeginEdit();
            }
         }
         else
         {
            /* Cancel the label edit action, inform the user, and 
               place the node in edit mode again. */
            e->CancelEdit = true;
            MessageBox::Show( "Invalid tree node label.\nThe label cannot be blank",
               "Node Label Edit" );
            e->Node->BeginEdit();
         }
      }
   }
/* Get the tree node under the mouse pointer and 
   save it in the mySelectedNode variable. */
private void treeView1_MouseDown(object sender, 
  System.Windows.Forms.MouseEventArgs e)
{
   mySelectedNode = treeView1.GetNodeAt(e.X, e.Y);
}

private void menuItem1_Click(object sender, System.EventArgs e)
{
   if (mySelectedNode != null && mySelectedNode.Parent != null)
   {
      treeView1.SelectedNode = mySelectedNode;
      treeView1.LabelEdit = true;
      if(!mySelectedNode.IsEditing)
      {
         mySelectedNode.BeginEdit();
      }
   }
   else
   {
      MessageBox.Show("No tree node selected or selected node is a root node.\n" + 
         "Editing of root nodes is not allowed.", "Invalid selection");
   }
}

private void treeView1_AfterLabelEdit(object sender, 
         System.Windows.Forms.NodeLabelEditEventArgs e)
{
   if (e.Label != null)
   {
     if(e.Label.Length > 0)
     {
        if (e.Label.IndexOfAny(new char[]{'@', '.', ',', '!'}) == -1)
        {
           // Stop editing without canceling the label change.
           e.Node.EndEdit(false);
        }
        else
        {
           /* Cancel the label edit action, inform the user, and 
              place the node in edit mode again. */
           e.CancelEdit = true;
           MessageBox.Show("Invalid tree node label.\n" + 
              "The invalid characters are: '@','.', ',', '!'", 
              "Node Label Edit");
           e.Node.BeginEdit();
        }
     }
     else
     {
        /* Cancel the label edit action, inform the user, and 
           place the node in edit mode again. */
        e.CancelEdit = true;
        MessageBox.Show("Invalid tree node label.\nThe label cannot be blank", 
           "Node Label Edit");
        e.Node.BeginEdit();
     }
   }
}
' Get the tree node under the mouse pointer and
' save it in the mySelectedNode variable. 
Private Sub treeView1_MouseDown(sender As Object, _
  e As System.Windows.Forms.MouseEventArgs)
        
   mySelectedNode = treeView1.GetNodeAt(e.X, e.Y)
End Sub    
    
Private Sub menuItem1_Click(sender As Object, e As System.EventArgs)
   If Not (mySelectedNode Is Nothing) And _
     Not (mySelectedNode.Parent Is Nothing) Then
      treeView1.SelectedNode = mySelectedNode
      treeView1.LabelEdit = True
      If Not mySelectedNode.IsEditing Then
         mySelectedNode.BeginEdit()
      End If
   Else
      MessageBox.Show("No tree node selected or selected node is a root node." & _
        Microsoft.VisualBasic.ControlChars.Cr & _
        "Editing of root nodes is not allowed.", "Invalid selection")
   End If
End Sub    
    
Private Sub treeView1_AfterLabelEdit(sender As Object, _
  e As System.Windows.Forms.NodeLabelEditEventArgs)
   If Not (e.Label Is Nothing) Then
      If e.Label.Length > 0 Then
         If e.Label.IndexOfAny(New Char() {"@"c, "."c, ","c, "!"c}) = -1 Then
            ' Stop editing without canceling the label change.
            e.Node.EndEdit(False)
         Else
            ' Cancel the label edit action, inform the user, and
            ' place the node in edit mode again. 
            e.CancelEdit = True
            MessageBox.Show("Invalid tree node label." & _
              Microsoft.VisualBasic.ControlChars.Cr & _
              "The invalid characters are: '@','.', ',', '!'", _
              "Node Label Edit")
            e.Node.BeginEdit()
         End If
      Else
         ' Cancel the label edit action, inform the user, and
         ' place the node in edit mode again. 
         e.CancelEdit = True
         MessageBox.Show("Invalid tree node label." & _
           Microsoft.VisualBasic.ControlChars.Cr & _
           "The label cannot be blank", "Node Label Edit")
           e.Node.BeginEdit()
      End If
   End If
End Sub 

Hinweise

Das AfterLabelEdit Ereignis tritt auf, wenn der Benutzer die Bearbeitung des Texts für einen Struktur Knoten abgeschlossen hat.The AfterLabelEdit event occurs when the user finishes editing the text for a tree node. Das BeforeLabelEdit Ereignis tritt auf, wenn der Benutzer mit dem Bearbeiten des Texts für einen Struktur Knoten beginnt.The BeforeLabelEdit event occurs when the user begins editing the text for a tree node. Ein NodeLabelEditEventArgs -Objekt gibt den neuen Text an, der dem Struktur Knoten zugeordnet werden soll, den Struktur Knoten, der die zu bearbeitende Bezeichnung enthält, und ob der Bearbeitungsvorgang abgebrochen wurde.A NodeLabelEditEventArgs object specifies the new text to associate with the tree node, the tree node that contains the label to edit, and whether the edit operation has been canceled.

Weitere Informationen zur Behandlung von Ereignissen finden Sie unter behandeln und Auslösen von Ereignissen.For more information about handling events, see Handling and Raising Events.

Konstruktoren

NodeLabelEditEventArgs(TreeNode)

Initialisiert eine neue Instanz der NodeLabelEditEventArgs-Klasse für den angegebenen TreeNode.Initializes a new instance of the NodeLabelEditEventArgs class for the specified TreeNode.

NodeLabelEditEventArgs(TreeNode, String)

Initialisiert eine neue Instanz der NodeLabelEditEventArgs-Klasse für den angegebenen TreeNode und den angegebenen Text, mit dem die Strukturknotenbezeichnung aktualisiert werden soll.Initializes a new instance of the NodeLabelEditEventArgs class for the specified TreeNode and the specified text with which to update the tree node label.

Eigenschaften

CancelEdit

Ruft einen Wert ab, der angibt, ob die Bearbeitung abgebrochen wurde, oder legt diesen fest.Gets or sets a value indicating whether the edit has been canceled.

Label

Ruft den neuen Text ab, der dem Strukturknoten zugeordnet werden soll.Gets the new text to associate with the tree node.

Node

Ruft den Strukturknoten ab, der den zu bearbeitenden Text enthält.Gets the tree node containing the text to edit.

Methoden

Equals(Object)

Ermittelt, ob das angegebene Objekt und das aktuelle Objekt gleich sind.Determines whether the specified object is equal to the current object.

(Geerbt von Object)
GetHashCode()

Dient als die Standard-HashfunktionServes as the default hash function.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Geerbt von Object)

Gilt für:

Siehe auch