2014-01-22 6 views
0

텍스트 상자가 많습니다. 사진을 참조하십시오. 텍스트 상자가있는 캐럿 위치 가져 오기

i1

나는 나의 양식의 숫자 키패드를 만들었습니다. 사진을 참조하십시오.

i2e

하면 숫자 키패드가 나타납니다 현재 위치를 캐럿 텍스트 상자를 클릭 할 때 나 코드에 도움이됩니다. 예를 들어 Salesman Textbox에있는 캐럿은 사용자 번호 7, 7을 클릭하면 salesman 텍스트 상자에 이 표시됩니다.

답변

0

숫자 버튼을 클릭하면 텍스트 상자에서 캐럿이 사라집니다. 따라서 텍스트 박스가 없으므로 어떤 텍스트 상자에 캐럿이 있는지 검색 할 수 없습니다. 마지막 포커스가있는 텍스트 상자를 변수에 저장하고 클릭 한 숫자를 해당 텍스트 상자에 출력하여이 작업을 수행 할 수 있습니다. 이것은 내가 의미하는 것의 예입니다.

public TextBox FocusedTextBox; 
public Form1() 
{ 
    InitializeComponent(); 
    textBox1.GotFocus += textBox_GotFocus; 
    textBox2.GotFocus += textBox_GotFocus; 
} 

private void textBox_GotFocus(object sender, EventArgs e) 
{ 
    FocusedTextBox = (TextBox) sender; 
} 

private void Button7_Click(object sender, EventArgs e) 
{ 
    if (FocusedTextBox != null) FocusedTextBox.Text += "7"; 
} 
+0

이 해결책이 수용 가능한가? – har07