允许将文本拖放到文本框中,但不能由用户编写

时间:2018-10-22 13:29:43

标签: c# winforms

我想创建一个文本框,可以在其中拖放文本,但用户不能在其中写入文本。

伪代码如下:

private void textBox1_TextChanged(object sender, EventArgs e)
{
    if( text is not dropped )
    {
        txtInstructionReg.Text = "";
    }
}

1 个答案:

答案 0 :(得分:0)

我不认为您可以按照想要的方式完全使用事件。相反,我建议分别处理每个事件,以允许/禁止您希望控制的动作。

例如,在您的示例中,我将为文本框可能发生的两个事件提供处理程序。处理键入文本的事件将删除新输入,并可能向用户显示一条消息,该消息实际上是“您不能这样做”。然后让拖放处理程序接受文本并将其放在文本框中。