private void ClientsList_MouseDoubleClick(object sender, MouseEventArgs e) { if (this.ClientsList.SelectedItems.Count > 0) { ListViewItem item = this.ClientsList.SelectedItems[0]; string id = item.Name; Client client = null; foreach (Client c in this.server.Manager.Clients.Values) { if (c.ID == id) { client = c; break; } } if (client == null) { MessageBox.Show("Не получилось найти клиента","Ошибка"); return; } if (client.Status == Internet.Status.AnswersVerified) { ClientDetailForm f2 = new ClientDetailForm(client, this.OriginalTest); f2.Show(); } else { MessageBox.Show("Ещё не получены ответы клиента", "Невозможно отобразить информацию о клиенте"); } } }
private void ClientsList_MouseClick(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Right && this.ClientsList.FocusedItem.Bounds.Contains(e.Location) == true) { ListViewItem item = this.ClientsList.SelectedItems[0]; string id = item.Name; Client client = null; foreach (Client c in this.server.Manager.Clients.Values) { if (c.ID == id) { client = c; break; } } if (client == null) { MessageBox.Show("Не получилось найти клиента", "Ошибка"); return; } contextMenuStrip1.Items[0].Click += (o, args) => { if (client == null) { MessageBox.Show("Не получилось найти клиента", "Ошибка"); return; } if (client.Status == Internet.Status.AnswersVerified) { ClientDetailForm f2 = new ClientDetailForm(client, this.OriginalTest); f2.Show(); } else { MessageBox.Show("Ещё не получены ответы клиента", "Невозможно отобразить информацию о клиенте"); } }; contextMenuStrip1.Items[1].Click += (o, args) => { if (this.server != null && this.server.Manager != null) { this.server.DeleteClient(id); ResizeColumns(); UpdateListView(); } }; contextMenuStrip1.Show(Cursor.Position); } }