HitTest() public method

public HitTest ( Point point ) : ListViewHitTestInfo
point Point
return ListViewHitTestInfo
Example #1
0
        private void listView1_MouseUp(object sender, MouseEventArgs e)
        {
            if (e.Button != MouseButtons.Right)
            {
                return;
            }

            if (!(sender is System.Windows.Forms.ListView))
            {
                return;
            }

            System.Windows.Forms.ListView list = (System.Windows.Forms.ListView)sender;

            if (list == null)
            {
                return; // ???
            }
            ListViewHitTestInfo info = list.HitTest(e.X, e.Y);

            if (info.Item == null)
            {
                return;
            }

            string dir = info.Item.Text;

            int p = dir.LastIndexOf('\\');

            if (p == -1)
            {
                return;
            }

            dir = dir.Substring(0, p);

            SaveFileDialog dlg = new SaveFileDialog();

            if (dlg.ShowDialog(this) == DialogResult.OK)
            {
                Stream       f = dlg.OpenFile();
                StreamWriter w = new StreamWriter(f, Encoding.GetEncoding(1251));
                foreach (ListViewItem i in list.Items)
                {
                    string dir1 = i.Text;
                    int    p1   = dir1.LastIndexOf('\\');
                    if (p1 != -1 && dir == dir1.Substring(0, p1))
                    {
                        int p2 = dir1.LastIndexOf(' ');
                        if (p2 != -1)
                        {
                            w.WriteLine("del " + i.Text.Substring(0, p2));
                        }
                    }
                }
                w.Flush();
                f.Close();
            }
        }
 private void lstPackages_MouseDoubleClick(object sender, MouseEventArgs e)
 {
     if (lstPackages.SelectedItems.Count != 0)
     {
         ListViewHitTestInfo info = lstPackages.HitTest(e.X, e.Y);
         if (info != null)
         {
             ListViewItem itemPointed = info.Item;
             if (itemPointed != null)
             {
                 itemPointed.Checked = !itemPointed.Checked;
             }
         }
         OnExplorePackage(sender, e);
     }
 }
        private void SelecaoAgendaReservasSauna(MouseEventArgs e, ListView listView)
        {           
            cmbCliente.Items.Clear();
            giClienteSelecionado = 0;
            cmbCliente.Items.Add("Nenhuma reserva selecionada.");

            btnIncProduto.Enabled = false;
            btnFecharConta.Enabled = false;
            movimentacao = new List<Model.Vo.MovimentacaoEstoque.Model_Vo_MovimentacaoEstoque>();

            ListViewHitTestInfo ar = listView.HitTest(e.Location);
            if (ar.SubItem == null)
            {
                new View_Desktop_CadReservas(_dataExibida).ShowDialog();

                InicializarDados();
            }
            else
            {
                gbItemAgenda = ar.SubItem.Tag as ReservasDoHorario;

                if ((gbItemAgenda != null) &&
                    (gbItemAgenda.listReservas != null) &&
                    (gbItemAgenda.listReservas.Count > 0))
                {
                    cmbCliente.Items.Clear();                    
                    for (int i = 0; i < gbItemAgenda.listReservas.Count; i++)
                    {

                        string sNome = controllerCliente.PesquisarCliente(gbItemAgenda.listReservas[i].IdCliente).Nome;

                        if ((ar.SubItem.Text.ToLower().Contains(";")))
                        {
                            if (i == 0)
                                giClienteSelecionado = gbItemAgenda.listReservas[i].IdCliente;
                        }
                        else if ((ar.SubItem.Text.ToLower().Contains(sNome.ToLower())))
                            giClienteSelecionado = gbItemAgenda.listReservas[i].IdCliente;

                        
                        if ((sNome == null) ||
                            (sNome.Trim() == String.Empty))
                            cmbCliente.Items.Add("Cliente sem nome - Nº: " + Convert.ToString(gbItemAgenda.listReservas[i].IdCliente));
                        else
                            cmbCliente.Items.Add(sNome + " - Nº: " + Convert.ToString(gbItemAgenda.listReservas[i].IdCliente));
                    }


                    Model.Vo.Agenda.Model_Vo_Agenda agenda = gbItemAgenda.listReservas.FirstOrDefault(x => x.IdCliente == giClienteSelecionado);

                    giAgendaSelec = 0;
                    if (agenda != null)
                    {
                        giAgendaSelec = agenda.Id;
                        clienteSelecionado = controllerCliente.PesquisarCliente(agenda.IdCliente);
                        cmbCliente.Text = clienteSelecionado.Nome;

                        btnIncProduto.Enabled = true;
                        btnFecharConta.Enabled = true;
                    }
                }
                else
                {
                    new View_Desktop_CadReservas(_dataExibida).ShowDialog();

                    InicializarDados();
                }
            }

            CarregarItensMovimentacaoSelecionada(giAgendaSelec);
        }