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, | нет | нет | нет | нет | нет | нет | нет | нет | нет | нет |
Button, | Щелкните | Щелкните, щелкните | нет | нет | нет | нет | нет | нет | нет | нет |
ListBox, | Щелкните | Щелкните, дважды щелкните | нет | нет | нет | нет | нет | нет | нет | нет |
TextBox, | Щелкните | Щелкните, дважды щелкните | нет | нет | нет | нет | нет | нет | нет | нет |
*
TreeView, * ListView | Щелкните | Щелкните, дважды щелкните | Щелкните | Щелкните, дважды щелкните | нет | нет | нет | нет | нет | нет |
ProgressBar, | Щелкните | Щелкните, щелкните | Щелкните | Щелкните, щелкните | Щелкните | Щелкните, щелкните | Щелкните | Щелкните, щелкните | Щелкните | Щелкните, щелкните |
Form,
** TabControl | Щелкните | Щелкните, дважды щелкните | Щелкните | Щелкните, дважды щелкните | Щелкните | Щелкните, дважды щелкните | Щелкните | Щелкните, дважды щелкните | Щелкните | Щелкните, дважды щелкните |
* Указатель мыши должен быть на дочерний объект (TreeNode или ListViewItem).
** В TabControl коллекции должен быть по крайней мере один TabPageTabPages объект .