Kui me paremklõpsame ListView juhtnuppu, saame valitud elemendi individuaalse tekstisisu. Nüüd palume paremklõpsu korral saada ainult raku tekstisisu. Siin on, kuidas: 1. Määratle globaalne hiire olek Punkt m_MBRpt; Kui sa paremklõpsuga Point 2. Käsitle sõnumit listView's, kui hiirt vajutatakse privaatne void listView1_MouseDown(objekti saatja, MouseEventArgs e) { // if (e.Button==MouseButtons.Right) { Hangi ekraani ja hiire koordinaadid ja teisenda need nimekirja juhtnuppude koordinaatideks m_MBRpt = listView1.PointToClient(Control.MousePosition); }
} 3. Paremklõpsuga menüü – kopeerimisüksuse sõnum private void COPYITEM_Click(objektisaatja, EventArgs e) { Kopeeri määratud tabelilahtri sisu if (listView1.SelectedItems.Count <= 0) { MessageBox.Show("Tehinguinfot pole valitud!") , "prompt", MessageBoxButtons.OK, MessageBoxIcon.Information); Tagasi; }
Hangi ekraani hiire koordinaadid ja teisenda need nimekirja koordinaatideks (töötle ja salvesta, kui hiirt vajutatakse) 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; Seadista liimitahvlile SetClipboardText (strText);
} 4. Seadista kleepi sisu public void SetClipboardText (string strText) { proovi { Clipboard.SetDataObject(strText); } catch (System.Exception nt) { MessageBox.Show (nt Message, "Prompt", MessageBoxButtons.OK, MessageBoxIcon.Error); }
} |