【问题标题】:How to disable listbox auto select item when pressing key按键时如何禁用列表框自动选择项目
【发布时间】:2010-04-06 04:35:27
【问题描述】:

我有一个列表框,我想在该列表框中复制和粘贴项目。 复制和粘贴工作正常,但每次我按“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;
            }
    }

【问题讨论】:

    标签: c# .net


    【解决方案1】:

    您是否尝试设置KeyEventArgs 对象的SuppressKeyPress 属性?

    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;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-08
      • 2012-03-02
      • 1970-01-01
      相关资源
      最近更新 更多