2010-04-05 2 views
2

У меня есть список, где я хочу скопировать и вставить элементы внутри этого списка. Копирование и вставка прекрасно работают, но каждый раз, когда я нажимаю «Crtl + C», элемент, начинающийся с буквы C, автоматически выбирается. Может ли это автоматический выбор быть отключен или я-то здесь отсутствуетКак отключить элемент автоматического выбора списка при нажатии клавиши

Вот копия и паста метод я реализовал:

private void listBox_Script_KeyDown(object sender, KeyEventArgs e) 
    { 
     if (e.Control == true && e.KeyCode == Keys.C) 
     { 
      int test = listBox_Script.SelectedIndex;      
      Clipboard.SetDataObject(listBox_Script.Items[listBox_Script.SelectedIndex], true); 
      return; 
     } 

     if (e.Control == true && e.KeyCode == Keys.V) 
     { 
      if (Clipboard.GetDataObject().GetDataPresent(DataFormats.Text)) 
      { 
       listBox_Script.Items.Insert(listBox_Script.SelectedIndex + 1, Clipboard.GetDataObject().GetData(DataFormats.Text).ToString()); 
       return; 
      } 
    } 

ответ

6

ли вы попробуйте установить SuppressKeyPress свойство KeyEventArgs объекта?

if (e.Control == true && e.KeyCode == Keys.C) 
{ 
    int test = listBox_Script.SelectedIndex;      
    Clipboard.SetDataObject(listBox_Script.Items[listBox_Script.SelectedIndex], true); 
    e.SuppressKeyPress = true; 
    return; 
} 
+0

Да, я пробовал, но, похоже, это не помогает. – tomfox66

+0

Ahhhh, "e.SuppressKeyPress = true;" сделал трюк Thanx – tomfox66

Смежные вопросы