1

我正在尝试制作一个文本框,您可以在其中输入页码并且表单会更改。我正在使用文本框来允许用户输入页码,并且我希望在不再主动编辑文本框时更改表单,问题是文本框是表单中唯一可编辑的控件,因此它永远不会丢失焦点和验证事件永远不会触发。有没有办法做到这一点?

4

2 回答 2

0

正如matzone所说,使用按键而不是页码键。

例如,假设您的用户想要转到页面“51”,那么用户可以键入 51 并按返回键。

让事件在返回键上触发,

private void TextBox1_KeyDown(object sender, KeyEventArgs e)
{
//13 is the keycode for Return

    If (e.KeyCode == 13)
    {
    //SuperAweomseEventGoesHere
    }
}
于 2013-07-30T15:14:52.420 回答
0

使用上面提到的按钮来指示用户想要加载新页面。

使用验证事件确保用户输入了有效值。

或者:

如果您的页码都是两位数,您还可以使用 TextChanged 事件并继续检查文本值是否等于页码。至少有 2 位数字很重要,因为 1 将加载页面而用户将无法加载 10

另一种选择:

使用 NumberUpDown 控件或组合框,以便将用户限制为正确的值

于 2013-07-30T16:42:49.493 回答