Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 20353|Odpowiedź: 0

[WinForm] C# pobiera zawartość komórki przez kliknięcie prawym przyciskiem myszy w widoku listy

[Skopiuj link]
Opublikowano 29.01.2015 15:15:34 | | |

Po kliknięciu prawym przyciskiem na ListView możemy zobaczyć poszczególne treści tekstu wybranego elementu.
Teraz prosimy, aby po kliknięciu prawym przyciskiem myszy otrzymać tylko treść tekstu komórki.
Oto jak:
1. Zdefiniuj globalny stan myszy
Punkt m_MBRpt; Gdy klikasz prawym przyciskiem myszy Point
2. Obsłużenie wiadomości w listView po naciśnięciu myszy
        prywatna pustka listView1_MouseDown(nadawca obiektu, MouseEventArgs e)
        {
            //
            if (e.Button==MouseButtons.Right)
            {
                Pobierz współrzędne myszy ekranowej i przekonwertuj je na współrzędne listy kontrolnych
                m_MBRpt = listView1.PointToClient(Control.MousePosition);
            }

        }
3. Menu kliknięcia prawym przyciskiem myszy – wiadomość dotycząca elementu kopiowania
        private void COPYITEM_Click(nadawca obiektu, EventArgs e)
        {
            Skopiuj zawartość podanej komórki tabeli
            if (listView1.SelectedItems.Count <= 0)
            {
                MessageBox.Show("Brak wybranych informacji o transakcji!") , "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Information);
                wrócić;
            }

            Pobierz współrzędne myszy ekranowej i przekonwertuj je na współrzędne listy sterującej (przetwarzaj i zapisuj po naciśnięciu myszy)
            Point pt = listView1.PointToClient(m_MBRpt);

            ListViewItem lstrow = listView1.GetItemAt(m_MBRpt.X, m_MBRpt.Y);
            System.Windows.Forms.ListViewItem.ListViewSubItem lstcol = lstrow. GetSubItemAt(m_MBRpt.X, m_MBRpt.Y);
            string strText = lstcol. Tekst;
            Ustaw na płytce kleju
            SetClipboardText(strText);

        }
4. Ustaw zawartość tablicy wklejonej
        public void SetClipboardText(string strText)
        {
            spróbuj
            {
                Clipboard.SetDataObject(strText);
            }
            catch (System.Exception ex)
            {
                MessageBox.Show (np. Message, "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Error);            
            }
            
        }




Poprzedni:Kody błędów i rozwiązania serwera Dell 2013 Edition
Następny:DIV+CSS zaokrąglone ramki
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com