Поделиться через


Control.DoubleClick Событие

Определение

Происходит при двойном щелчке элемента управления.

public:
 event EventHandler ^ DoubleClick;
public event EventHandler DoubleClick;
public event EventHandler? DoubleClick;
member this.DoubleClick : EventHandler 
Public Custom Event DoubleClick As EventHandler 

Тип события

Примеры

В следующем примере кода используется DoubleClick событие для ListBox загрузки текстовых файлов, перечисленных ListBox в , в TextBox элемент управления .

   // This example uses the DoubleClick event of a ListBox to load text files
   // listed in the ListBox into a TextBox control. This example
   // assumes that the ListBox, named listBox1, contains a list of valid file
   // names with path and that this event handler method
   // is connected to the DoublClick event of a ListBox control named listBox1.
   // This example requires code access permission to access files.
private:
   void listBox1_DoubleClick( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      // Get the name of the file to open from the ListBox.
      String^ file = listBox1->SelectedItem->ToString();
      try
      {
         // Determine if the file exists before loading.
         if ( System::IO::File::Exists( file ) )
         {
            
            // Open the file and use a TextReader to read the contents into the TextBox.
            System::IO::FileInfo^ myFile = gcnew System::IO::FileInfo( listBox1->SelectedItem->ToString() );
            System::IO::TextReader^ myData = myFile->OpenText();
            ;
            textBox1->Text = myData->ReadToEnd();
            myData->Close();
         }
      }
      // Exception is thrown by the OpenText method of the FileInfo class.
      catch ( System::IO::FileNotFoundException^ ) 
      {
         MessageBox::Show( "The file you specified does not exist." );
      }
      // Exception is thrown by the ReadToEnd method of the TextReader class.
      catch ( System::IO::IOException^ ) 
      {
         MessageBox::Show( "There was a problem loading the file into the TextBox. Ensure that the file is a valid text file." );
      }
   }
// This example uses the DoubleClick event of a ListBox to load text files
// listed in the ListBox into a TextBox control. This example
// assumes that the ListBox, named listBox1, contains a list of valid file
// names with path and that this event handler method
// is connected to the DoublClick event of a ListBox control named listBox1.
// This example requires code access permission to access files.
private void listBox1_DoubleClick(object sender, System.EventArgs e)
{
    // Get the name of the file to open from the ListBox.
    String file = listBox1.SelectedItem.ToString();

    try
    {
        // Determine if the file exists before loading.
        if (System.IO.File.Exists(file))
        {
            // Open the file and use a TextReader to read the contents into the TextBox.
            System.IO.FileInfo myFile = new System.IO.FileInfo(listBox1.SelectedItem.ToString());
            System.IO.TextReader myData = myFile.OpenText();;

            textBox1.Text = myData.ReadToEnd();
            myData.Close();
        }
    }
        // Exception is thrown by the OpenText method of the FileInfo class.
    catch(System.IO.FileNotFoundException)
    {
        MessageBox.Show("The file you specified does not exist.");
    }
        // Exception is thrown by the ReadToEnd method of the TextReader class.
    catch(System.IO.IOException)
    {
        MessageBox.Show("There was a problem loading the file into the TextBox. Ensure that the file is a valid text file.");
    }
}
' This example uses the DoubleClick event of a ListBox to load text files  
' listed in the ListBox into a TextBox control. This example
' assumes that the ListBox, named listBox1, contains a list of valid file 
' names with path and that this event handler method
' is connected to the DoublClick event of a ListBox control named listBox1.
' This example requires code access permission to access files.
Private Sub listBox1_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles listBox1.DoubleClick
    ' Get the name of the file to open from the ListBox.
    Dim file As [String] = listBox1.SelectedItem.ToString()

    Try
        ' Determine if the file exists before loading.
        If System.IO.File.Exists(file) Then
            ' Open the file and use a TextReader to read the contents into the TextBox.
            Dim myFile As New System.IO.FileInfo(listBox1.SelectedItem.ToString())
            Dim myData As System.IO.TextReader = myFile.OpenText()

            textBox1.Text = myData.ReadToEnd()
            myData.Close()
        End If
        ' Exception is thrown by the OpenText method of the FileInfo class.
    Catch
        MessageBox.Show("The file you specified does not exist.")
        ' Exception is thrown by the ReadToEnd method of the TextReader class.
    Catch
     MessageBox.Show("There was a problem loading the file into the TextBox. Ensure that the file is a valid text file.")
    End Try
End Sub

Комментарии

Двойной щелчок определяется параметрами мыши операционной системы пользователя. Пользователь может задать время между нажатиями кнопки мыши, которые будут считаться двойным щелчком, а не двумя отдельными щелчками. Событие Click возникает при каждом двойном щелчке элемента управления. Например, если у вас есть обработчики Click событий и DoubleClickForm, Click события и DoubleClick создаются при двойном щелчке формы и вызове обоих методов. Если элемент управления дважды щелкается и этот элемент управления не поддерживает DoubleClick событие, Click событие может быть вызвано дважды.

Чтобы это событие было создано, необходимо задать StandardDoubleClick для значений ControlStylestrue и StandardClick . Для этих значений может быть задано значение , true если вы наследуете существующие элементы управления Windows Forms.

Примечание

Следующие события не вызываются для TabControl класса , если в TabControl.TabPages коллекции нет хотя бы одного событияTabPage: Click, DoubleClick, MouseDown, MouseUp, MouseHover, MouseEnterMouseLeave и MouseMove. Если в коллекции есть хотя бы один элемент TabPage управления и пользователь взаимодействует с заголовком элемента управления tab (где TabPage отображаются имена), TabControl вызывает соответствующее событие. Однако если взаимодействие с пользователем находится в клиентской области страницы вкладки TabPage , вызывает соответствующее событие.

Дополнительные сведения об обработке событий см. в разделе Обработка и вызов событий.

Примечания для тех, кто наследует этот метод

Наследование от стандартного элемента управления Windows Forms и изменение StandardClick значений ControlStyles или StandardDoubleClick на может привести к непредвиденному true поведению или вообще не оказать никакого влияния, если элемент управления не поддерживает Click события или DoubleClick .

В следующей таблице перечислены Windows Forms элементов управления и то, какое событие (Click или DoubleClick) вызывается в ответ на указанное действие мыши.

Control Щелчок левой кнопкой мыши Двойной щелчок левой мыши Щелчок правой кнопкой мыши Двойной щелчок правой кнопкой мыши Средний щелчок мышью Двойной щелчок средней мыши XButton1 Mouse Click XButton1 Mouse Double-Click XButton2 Mouse Click Double-Click мыши XButton2
MonthCalendar,

DateTimePicker,

RichTextBox,

HScrollBar,

VScrollBar

нет

нет нет нет нет нет нет нет нет нет
Button,

CheckBox,

RadioButton

Щелкните

Щелкните, щелкните нет нет нет нет нет нет нет нет
ListBox,

CheckedListBox,

ComboBox

Щелкните

Щелкните, дважды щелкните нет нет нет нет нет нет нет нет
TextBox,

DomainUpDown,

NumericUpDown

Щелкните

Щелкните, дважды щелкните нет нет нет нет нет нет нет нет
* TreeView,

* ListView

Щелкните

Щелкните, дважды щелкните Щелкните Щелкните, дважды щелкните нет нет нет нет нет нет
ProgressBar,

TrackBar

Щелкните

Щелкните, щелкните Щелкните Щелкните, щелкните Щелкните Щелкните, щелкните Щелкните Щелкните, щелкните Щелкните Щелкните, щелкните
Form,

DataGrid,

Label,

LinkLabel,

Panel,

GroupBox,

PictureBox,

Splitter,

StatusBar,

ToolBar,

TabPage,

** TabControl

Щелкните

Щелкните, дважды щелкните Щелкните Щелкните, дважды щелкните Щелкните Щелкните, дважды щелкните Щелкните Щелкните, дважды щелкните Щелкните Щелкните, дважды щелкните

* Указатель мыши должен быть на дочерний объект (TreeNode или ListViewItem).

** В TabControl коллекции должен быть по крайней мере один TabPageTabPages объект .

Применяется к

См. также раздел