Você não é possível soltar texto em um controle RichTextBox usando uma amostra de código de documentação do MSDN

Traduções deste artigo Traduções deste artigo
ID do artigo: 814309 - Exibir os produtos aos quais esse artigo se aplica.
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Informações de versão beta
Este artigo aborda uma versão beta de um Microsoft produto. As informações neste artigo são fornecidas como - é e estão sujeitas a alterações sem aviso prévio.

Nenhum suporte formal está disponível da Microsoft para este produto beta. Para obter informações sobre como obter suporte para uma versão beta, consulte a documentação que acompanha o Beta arquivos do produto, ou verifique o local da Web da qual você a versão foi baixada.
Expandir tudo | Recolher tudo

Neste artigo

Sintomas

Você tentar arrastar um controle RichTextBox com o código em "Operações de arrastar-e-soltar da ativando com o controle Windows Forms RichTextBox" documento do MSDN. A alteração pode ocorrer no ponteiro quando você arrasta o texto a partir do WordPad. No entanto, não é possível soltar o texto de RichTextBox .

Causa

Esse problema ocorre porque não há nenhum código para o evento Solte na documentação do MSDN. Portanto, não é possível descartar o texto que você selecionar WordPad em RichTextBox .

Resolução

Para contornar este problema, adicione um evento de DragDrop para RichTextBox1 . Para fazer isso, use as instruções a seguir.

Visual Basic .NET ou Visual Basic 2005

Adicione o seguinte código no evento de DragDrop RichTextBox1 :
   Dim i As Int16 
   Dim s As String

   ' Get Start Position For the for Dropping the Text  
   i = RichTextBox1.SelectionStart
   s = RichTextBox1.Text.Substring(i)
   RichTextBox1.Text = RichTextBox1.Text.Substring(0, i)

   ' Drop the Text on to the RichTextBox
   RichTextBox1.Text = RichTextBox1.Text + e.Data.GetData(DataFormats.Text).ToString()
   RichTextBox1.Text = RichTextBox1.Text + s
   
translation from VPE for Csharp Visual .NET ou Visual translation from VPE for Csharp 2005

Adicione o seguinte código para o construtor da classe Form1 após a instrução InitializeComponent() :
// Handler for DragDrop event
this.richTextBox1.DragDrop += new System.Windows.Forms.DragEventHandler(this.rtb_dragdrop);
adicionar o procedimento a seguir para o código depois do método Main() :
private void rtb_dragdrop(object sender,DragEventArgs e)
{
   int i;
   String s;
   
   // Get Start Position to Drop the Text  
   i = richTextBox1.SelectionStart;
   s = richTextBox1.Text.Substring(i);
   richTextBox1.Text = richTextBox1.Text.Substring(0,i);

   // Drop the Text on the RichTextBox
   richTextBox1.Text = richTextBox1.Text + e.Data.GetData(DataFormats.Text).ToString();
   richTextBox1.Text = richTextBox1.Text + s;
}

Situação

Esse comportamento é por design.

Mais Informações

Passos para reproduzir o problema

  1. No Microsoft Visual Studio .NET ou no Microsoft Visual Studio 2005, criar um novo Windows projeto de aplicativo usando Visual Basic.NET, Visual Basic 2005, translation from VPE for Csharp Visual .NET ou Visual C# 2005.

    Por padrão, é criado o Form1 .
  2. Na caixa de ferramentas, arraste um RichTextBox controle ao Form1 .

    RichTextBox1 é criado no Form1 .
  3. Clique com o botão direito do mouse RichTextBox1 e, em seguida, clique em Propriedades .
  4. Na janela Properties, defina o valor para AllowDrop como True .
  5. Clique com o botão direito do mouse no Form1 e, em seguida, clique em View Code .
  6. Adicione o seguinte código no evento DragEnter RichTextBox1 :

    Visual Basic .NET ou Visual Basic 2005
       If (e.Data.GetDataPresent(DataFormats.Text)) Then
          e.Effect = DragDropEffects.Copy
       Else
          e.Effect = DragDropEffects.None
       End If
    
    translation from VPE for Csharp Visual .NET ou Visual translation from VPE for Csharp 2005
    private void rtb_dragenter(object sender,DragEventArgs e)
    {
       if (e.Data.GetDataPresent(DataFormats.Text)) 
          e.Effect = DragDropEffects.Copy ;
       else
          e.Effect = DragDropEffects.None ;
    }
  7. Tente arrastar o texto do WordPad para RichTextBox1 .

    Não é possível descartar o texto.

Referências

Para obter mais informações, visite o seguinte site da MSDN:

Habilitar operações de arrastar-e-soltar com o Windows Forms controle RichTextBox
http://msdn2.microsoft.com/en-us/library/Aa984395(VS.71).aspx
Para obter mais informações sobre o evento RichTextBox.DragEnter e o evento RichTextBox.DragDrop , consulte a documentação do .NET Framework SDK ou visite o seguinte site da MSDN:

Evento RichTextBox.DragEnter
http://msdn2.microsoft.com/en-us/library/system.windows.forms.richtextbox.dragenter(vs.71).aspx

Propriedades

ID do artigo: 814309 - Última revisão: quinta-feira, 27 de fevereiro de 2014 - Revisão: 2.9
A informação contida neste artigo aplica-se a:
  • Microsoft Visual Basic 2005
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
  • Microsoft Visual C# 2005 Express Edition
  • Microsoft Visual C# .NET 2003 Standard Edition
  • Microsoft Visual C# .NET 2002 Standard Edition
Palavras-chave: 
kbnosurvey kbarchive kbmt kbvs2005swept kbvs2005applies kbprb kbwindowsforms kbproperties kbevent kbrichedit kbdragdrop KB814309 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 814309

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com