아마도 하나의 문자가 포함 된 12 개의 텍스트 상자가있을 것입니다. 현재 텍스트 상자의 현재 텍스트를 지우려면 삭제 키를 처리해야합니다. 그런 다음 이동하여 탭 인덱스를 줄이고 이전 텍스트 상자를 편집하려면 뒤로 이동하십시오. 현재 텍스트 상자의 탭 인덱스를 참조하고 다시 이동하는 방법을 모르겠습니다. 다음으로 가려면 '탭'의 전송 키를 수행하는 것뿐입니다. 내 keyprocess 기능에하나의 탭 색인으로 돌아 가기
는 내가 가지고 다시
//DEL goes back one text box and clears it
if (keyData == (Keys.Delete))
{
//Clear textbox
//Go back one textbox to edit
return true;
}
을 내가 보내고 텍스트 상자를 편집 완료 후 :
SendKeys.Send("{TAB}");
어쩌면이 할 수있는 더 좋은 방법이있다.
if (e.KeyCode == Keys.Delete)
{
var textBox = ((TextBox) sender);
textBox.Text = string.Empty;
var previous = textBox.Parent.GetNextControl(textBox, false);
if (previous != null)
previous.Focus();
e.Handled = true;
}
또는 @Mr 리스터가 제안 당신과 함께 SHIFT + TAB 키 조합을 보낼 수 있습니다 :
Windows Form? WCF? 실버 라이트? 웹 양식? – balexandre
windows form C#, .NET – ikathegreat
'{SHIFT} {TAB}'해봤습니까? 그것은 약간의 해킹처럼 느껴진다. 더 나은 방법이 있어야합니다. –