我已经看到这个问题在互联网上传播了很多,但还没有找到解决我问题的答案。我基本上使用SpicIE.Controls.Toolbar(C#)为IE创建一个资源管理器栏。除此之外,它还有一些文本框。我遇到的问题是,当我在文本框中键入并按下退格键时,浏览器会处理它,而不是删除文本框中的字符,它会返回浏览器上的一个页面。为了解决这个问题,我创建了自己的自定义文本框,以便能够正确处理退格:
public class MyTextBox:TextBox
{
protected override void OnKeyUp(KeyEventArgs e)
{
if (e.KeyValue == 8)
{
this.Text = this.Text.Substring(0, this.Text.Length - 1);
this.SelectionStart = this.Text.Length + 1;
e.Handled = true;
}
}
}
代码确实可以正常工作,但即使e.Handled设置为true,浏览器仍会返回一页。
谁能帮我这个?我觉得我去过他们讨论过的所有论坛,但仍未找到答案
谢谢你的帮助!
答案 0 :(得分:0)
通常,当发生这种情况时,意味着扩展没有正确实现IInputObject。我不熟悉SpicIE框架,所以我不确定你是否需要实现它。或者它们。