. 이것을 달성하는 방법? C# 2008, Windows Forms를 사용하여 전체 코드를 도와주세요.C#으로 유치원 1 년을 Form2의 컨트롤에 액세스하는 방법을 Form1</p> <p>에서 Form2를의 컨트롤에 액세스 할 수 그리고 또한 내가 Form1에 자체 Form2를 컨트롤에 대한 이벤트를 만들고 싶습니다 어떻게 2,010분의 2,008
답변
양식 1에서 양식 2를 열고 form.eg에 액세스 할 때 사용하는 변수를 사용하십시오. 형태로
Form2 secondForm = new Form2();
Form2.Show();
secondForm.somePublicControl.Text = "test";
MessageBox.Show(secondForm.somePublicVariable);
우선 secondform에 액세스 할 수 없습니다.
어떤 오류 메시지가 나타 납니까? 두 번째 양식 컨트롤이 공용이거나 상속 수정 자 (개인은 아님)입니까? 또한 폼의 컨트롤에 액세스하기 전에 두 번째 폼에서 InitialiseComponent를 호출했는지 확인하십시오. –
1 당신이 정말 다른 형태의 컨트롤을 액세스 할 또는 다른 형태로 사용 데이터 값의 변화에 반응 싶은가? 후자의 경우는 컨트롤을 글로벌 모델 데이터에 바인딩하고 INotifyPropertyChanged 인터페이스를 사용하여 데이터 변경을 신호/수신함으로써 구현할 수 있습니다.
좋아, 그럼 당신은 frmMain과 frmSettings 있다고 가정 해 봅시다. frmSettings가 frmMain의 레이블을 업데이트하도록합니다. 여기에 내가 어떻게 할 것인가.
1 단계 frmMain.Designer.cs에서 레이블 (또는 다른 컨트롤) 범위를 public으로 변경합니다.
예.
public System.Windows.Forms.GroupBox groupBox2;
public System.Windows.Forms.Label label8;
이제는 쉬웠습니까?
2 단계. frmSettings에서 이것을 선언하십시오.
protected frmMain frmMain;
public frmSettings(frmMain frmMain)
{
this.frmMain = frmMain;
}
이제 재미있는 것들을 변경하십시오. 마찬가지로 :
frmMain.label8.Text="Changed from frmSettings";
가장 좋은 방법은 당신이 그 컨트롤의 속성을 사용하면 아무도 정말 양식의 원하는 동작을 방해 할 수 없도록 노출 할 속성을 설정하려고합니다.
public partial class SecondaryForm {
// Let's suppose you have put a TextBox control in design mode named txtCusomerName.
public string CustomerName {
set {
this.txtCustomerName.Text = value.Trim();
}
}
}
public partial class MainForm {
// Suppose you have a button to show a form with the customer name.
private btnShowCustomerName_Click(object sender, EventArgs e) {
SecondaryForm f
f.CustomerName = "Acme inc,";
f.ShowDialog();
}
}
- 1. 스레드를 통해 컨트롤에 액세스
- 2. JPanel에서 컨트롤에 액세스하는 방법 ...?
- 3. WPF DataTemplate에서 컨트롤에 액세스하는 방법
- 4. 다른 스레드에서 컨트롤에 액세스하는 방법?
- 5. UpdatePanel 내의 컨트롤에 액세스 할 수 없다
- 6. 구현 클래스에서 컨트롤에 액세스
- 7. 안드로이드 위젯 컨트롤에 액세스
- 8. 클래스 내부에서 컨트롤에 액세스
- 9. 페이지 컨트롤에 포함 된 양식의 컨트롤에 어떻게 액세스합니까?
- 10. Silverlight보기에서 부모 컨트롤에 액세스
- 11. WPF DataGrid의 컨트롤에 액세스하는 방법
- 12. UserControl의 내부 컨트롤에 액세스
- 13. aspx 페이지에서 컨트롤에 액세스
- 14. 별도의 클래스에서 페이지 컨트롤에 액세스
- 15. WPF의 명령 내에서 컨트롤에 액세스
- 16. 서버 컨트롤에 대한 Response.Write
- 17. 목록보기 행의 컨트롤에 액세스하는 방법
- 18. 프로그래밍 방식으로 DataTemplate에서 컨트롤에 액세스
- 19. 서버 쪽에서 HTML 컨트롤에 액세스
- 20. ASP.NET에서 중첩 된 MultiView 컨트롤에 액세스하는 방법
- 21. BackgroundWorker 스레드에서 UI 컨트롤에 액세스
- 22. 상속 된 winform 컨트롤에 대한 액세스 금지
- 23. 내 GridView의 HeaderTemplate에서 컨트롤에 액세스하는 방법
- 24. C# usercontrol 모든 하위 컨트롤에 액세스하는 방법
- 25. 단추를 클릭하면 어떻게 ListView 내의 컨트롤에 액세스 할 수 있습니까?
- 26. 동적 컨트롤에 대한 유효성 검사
- 27. FindControl 사용 : Formview에서 컨트롤에 액세스
- 28. asp.net 컨트롤에 대한 클라이언트 개체
- 29. silverlight3 DataGrid 셀 컨트롤에 액세스하는 방법
- 30. 상위 페이지 컨트롤에 액세스하는 WPF 프레임
당신은 달성하고자하는 것을 보여주지 않고 완전한 코드를 요구함으로써 많은 반응을 얻지 못할 것이라는 것을 알고 있습니까? 우리는 이것보다 훨씬 더 많은 정보와 당신이 뭔가를 시도한 단서를 필요로합니다. – ZombieSheep