저를 위해 작은 작업을 수행 할 수있는 작은 프로그램을 만들고 있습니다. 내 이름과 기타 개인 정보를 입력 할 두 번째 양식 (Form2)을 만들고 싶습니다.시스템이 Form2의 필드를 읽는 데 도움이 필요합니다. C#
어떻게하면 Form1이 Form2의 텍스트 필드를 읽을 수 있습니까?
저를 위해 작은 작업을 수행 할 수있는 작은 프로그램을 만들고 있습니다. 내 이름과 기타 개인 정보를 입력 할 두 번째 양식 (Form2)을 만들고 싶습니다.시스템이 Form2의 필드를 읽는 데 도움이 필요합니다. C#
어떻게하면 Form1이 Form2의 텍스트 필드를 읽을 수 있습니까?
Form2에서 Form1의 텍스트 필드를 읽으려면 어떻게해야합니까?
가Form2 form2 = new Form2(); form2.Show(); // Or ShowDialog? string name = form2.UserName;
UserName
의 구현뿐만 아니라로부터 값을 페치 할 수있다 :
아마도 Form1
정도로 인스턴스에 길게 형태에 적절한 속성을 노출 ... Form2
의 인스턴스를 생성 텍스트 필드 :
public string UserName { get { return userNameTextField.Text; } }
당신 속성에 직접 텍스트 필드를 표시 할 수도 있지만 개인적으로 나는 폼이 자신의 UI를 "소유"해야한다고 생각하는 경향이 있으며, 다른 코드가 그것을 엉망으로 만들어서는 안된다.
당신은 방법 만들고 Form1에이 textfields
public string GetTextFieldText()
{
return textfield.Text;
}
에서 데이터를 retreive 또는 속성을 포장
public string TextField
{
get
{
return textfield.Text;
}
}
다음과 같은 형식 2 일에서 액세스 할 수 :
Form1 frm1 = new Form1();
string text = frm1.TextField; // Or GetTextFieldText()
수정 자 public
을 사용하여 전역 변수를 만든 다음 텍스트 상자의 텍스트를 Text_Changed
이벤트 또는 button_click
이벤트를 사용하는 변수로 보내십시오 (단추를 클릭 한 후 텍스트를 검색하려는 경우).
다음으로 Form1
. 당신은 당신의 form2
과에
Form2 form = new Form2();
//Then do whatever u want with the variable
MessageBox.Show(form.globalVariableName);
또는 설정
public
에 텍스트 상자의 수정 속성을 사용하여 Form1
Form2 form = new Form2();
//Then do whatever u want with the textbox
MessageBox.Show(form.TextBoxName.Text);
이것은 당신이 시작할 수 있어야합니다
//Global Variable
Form2 frm2;
//assuming form1 is the creator of form2
public Form1()
{
frm2 = new Form2();
}
//in your Form1, under read data button for example:
string myName = frm2.TextBox1.Text;
글로벌 변수를 만드시겠습니까? –