如何解决退出按钮以取消操作
| 您好,目前我有2个按钮,“更新”和“修改”。更新按钮设置为最初隐藏。 当我单击“修改”按钮时,“修改”按钮隐藏,出现“更新”按钮,文本框变为非只读。然后单击更新按钮将隐藏更新按钮,并显示修改按钮,文本框将被隐藏,标签将出现。 我如何更改代码,以便: 当我第一次单击“修改”按钮时,我可以更新文本框的值,并且在这种状态下,如果我按“ ESC”按钮,我将隐藏“更新”按钮,而文本框将是只读的? 以下是当前代码:private void ProjectnumberupdateButton_Click(object sender,RoutedEventArgs e)
{
ProjectnumberresultLabel.Content = ProjectnumberTextBox.Text;
ProjectnumberupdateButton.Visibility = Visibility.Hidden;
ProjectnumberTextBox.Visibility = Visibility.Hidden;
ProjectnumbermodifyButton.Visibility = Visibility.Visible;
PreviousbuildversionresultLabel.Content = \"\" + MajorversionresultLabel.Content + \".\" + MinorversionresultLabel.Content + \".\" + ProjectnumberresultLabel.Content + \".\" + BuildnumberresultLabel.Content;
}
private void ProjectnumbermodifyButton_Click(object sender,RoutedEventArgs e)
{
ProjectnumberupdateButton.Visibility = Visibility.Visible;
ProjectnumberTextBox.Visibility = Visibility.Visible;
ProjectnumbermodifyButton.Visibility = Visibility.Hidden;
}
编辑:
这是我到目前为止所做的:
private void MajorversionTextBox_KeyDown(object sender,KeyEventArgs e)
{
if (e.Key == Key.Escape)
{
MajorversionupdateButton.Visibility = Visibility.Hidden;
MajorversionTextBox.Visibility = Visibility.Hidden;
MajorversionmodifyButton.Visibility = Visibility.Visible;
}
}
private void MajorversionmodifyButton_Click(object sender,RoutedEventArgs e)
{
MajorversionupdateButton.Visibility = Visibility.Visible;
MajorversionTextBox.Visibility = Visibility.Visible;
MajorversionmodifyButton.Visibility = Visibility.Hidden;
Keyboard.Focus(MajorversionTextBox);
MajorversionTextBox_KeyDown(); // this is the line. i have trouble hooking this up
}
抱歉,我将项目号更改为majorversion。
解决方法
您可以为窗口编写OnKeyPress事件并跟踪ESC按钮的单击。
在其中,您可以编写逻辑来切换控件的可见性。
, 您可以挂钩/处理KeyDown事件,检查所按下的键是否为退出按钮,然后从此处对代码中的按钮和文本框进行更改。
, 您可以在单击修改按钮时将焦点设置在文本框上,然后在文本框上使用KeyDown事件:
private void ProjectnumberTextBox_KeyDown(object sender,KeyEventArgs e)
{
if (e.KeyCode == Keys.Escape)
{
ProjectnumberTextBox.ReadOnly = true;
ProjectnumbermodifyButton.Visibility = Visibility.Hidden;
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。