Aracılığıyla paylaş


Nasıl yapılır: Etkin MDI Alt Öğesine Veri Gönderme

Genellikle, Çok Belgeli Arabirim (MDI) Uygulamaları bağlamında, kullanıcının Pano'dan bir MDI uygulamasına veri yapıştırması gibi etkin alt pencereye veri göndermeniz gerekir.

Dekont

Hangi alt pencerenin odaklandığını doğrulama ve içeriğini Pano'ya gönderme hakkında bilgi için bkz . Etkin MDI Alt Öğesini Belirleme.

Pano'dan etkin MDI alt penceresine veri göndermek için

  1. Bir yöntem içinde Pano'da bulunan metni etkin alt formun etkin denetimine kopyalayın.

    Dekont

    Bu örnekte, denetim içeren bir veya daha fazla MDI alt penceresi olan bir RichTextBox MDI üst formu (Form1) olduğu varsayılır. Daha fazla bilgi için bkz . MDI Üst Formları Oluşturma.

    Public Sub mniPaste_Click(ByVal sender As Object, _  
       ByVal e As System.EventArgs) Handles mniPaste.Click  
    
       ' Determine the active child form.  
       Dim activeChild As Form = Me.ParentForm.ActiveMDIChild  
    
       ' If there is an active child form, find the active control, which  
       ' in this example should be a RichTextBox.  
       If (Not activeChild Is Nothing) Then  
          Try  
             Dim theBox As RichTextBox = Ctype(activeChild.ActiveControl, RichTextBox)  
             If (Not theBox Is Nothing) Then  
                ' Create a new instance of the DataObject interface.  
                Dim data As IDataObject = Clipboard.GetDataObject()  
                ' If the data is text, then set the text of the
                ' RichTextBox to the text in the clipboard.  
                If (data.GetDataPresent(DataFormats.Text)) Then  
                   theBox.SelectedText = data.GetData(DataFormats.Text).ToString()  
                End If  
             End If  
          Catch  
             MessageBox.Show("You need to select a RichTextBox.")  
          End Try  
       End If  
    End Sub  
    
    protected void mniPaste_Click (object sender, System.EventArgs e)  
    {  
      // Determine the active child form.  
       Form activeChild = this.ParentForm.ActiveMdiChild;  
    
       // If there is an active child form, find the active control, which  
       // in this example should be a RichTextBox.  
       if (activeChild != null)  
       {  
          try
          {  
             RichTextBox theBox = (RichTextBox)activeChild.ActiveControl;  
             if (theBox != null)  
             {  
                // Create a new instance of the DataObject interface.  
                IDataObject data = Clipboard.GetDataObject();  
                // If the data is text, then set the text of the
                // RichTextBox to the text in the clipboard.  
                if (data.GetDataPresent(DataFormats.Text))  
                {  
                   theBox.SelectedText = data.GetData(DataFormats.Text).ToString();
                }  
             }  
          }  
          catch
          {  
             MessageBox.Show("You need to select a RichTextBox.");  
          }  
       }  
    }  
    

Ayrıca bkz.