>백엔드 개발 >C++ >첫 번째 양식에서 DatagridView 행을 선택하여 ComboBox의 SelectedValue를 두 번째 양식에 설정하는 방법은 무엇입니까?

첫 번째 양식에서 DatagridView 행을 선택하여 ComboBox의 SelectedValue를 두 번째 양식에 설정하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2025-01-31 07:36:11476검색

Windows를 형성합니다 장면 : How to Set a ComboBox's SelectedValue on a Second Form by Selecting a DataGridView Row on the First Form?
Windows Forms 응용 프로그램은 종종 한 창의 선택에 따라 다른 창의 컨트롤을 채우는 것과 같은 여러 창 사이의 데이터 상호 작용이 필요합니다.

>> 질문 :

첫 번째 창에서 선을 선택하여 DatagridView의 선을 설정하여 Combobox를 채우기 위해이 값으로 Combobox를 채우는 방법은 무엇입니까? 솔루션 : Windows 형태의 Windows는 다른 C#범주와 유사하며 Windows 간의 통신 방법은 클래스 간 통신 방법과 동일합니다.

첫 번째 창에서 두 번째 창을 작동시킵니다.

구성 기능 매개 변수 전송 : 두 번째 창의 생성자에 필요한 매개 변수를 추가하십시오. 두 번째 창 인스턴스를 만들 때 값은 생성자로 전달됩니다. >> 공개 속성 또는 방법 :

두 번째 창에서 공개 속성 또는 메소드를 작성하고 두 번째 창 인스턴스를 작성한 후 이러한 속성을 설정하십시오. 이런 식으로 두 번째 창은 이러한 값에 액세스 할 수 있습니다.

공공 통제 :

또 다른 방법은 다른 Windows에서 액세스하기 위해 공개 액세스 권한으로 작동 해야하는 컨트롤을 설정하는 것입니다. 그러나 코드의 유지 보수 및 확장 성이 줄어들 기 때문에 일반적으로 권장되지 않습니다.

두 번째 창의 첫 번째 창을 작동합니다. 첫 번째 창 인스턴스를 전달하십시오.

첫 번째 창의 인스턴스를 저장하기 위해 두 번째 창에서 공개 속성을 만듭니다. 두 번째 창 인스턴스를 만들 때 첫 번째 창의 인스턴스를 전달하십시오. 그런 다음이 인스턴스를 사용하여 첫 번째 창을 작동 할 수 있습니다.

이벤트 사용 :

두 번째 창에서 이벤트를 만들고 첫 번째 창에서 이벤트를 구독하십시오. 첫 번째 창이 필요한 경우 이벤트가 트리거됩니다.

행동위원회에 주입하십시오. 두 번째 창 인스턴스를 만들 때 사용자 정의 조치를 사용하여 속성을 할당하십시오. 첫 번째 창을 조작 해야하는 경우 두 번째 창에서 동작을 호출하십시오. 첫 번째 창 제어 : 첫 번째 창의 제어를 직접 공개하고 첫 번째 창의 인스턴스를 두 번째 창으로 전달합니다. 그런 다음 컨트롤을 작동 할 수 있습니다. 그러나 이것은 권장되지 않습니다. 그 이유는 위에 있습니다.

예 :

첫 번째 창의 두 번째 창

작동 예 1- 두 번째 창을 사용하는 생성자 : 첫 번째 창에서

예제 2- 두 번째 창
    첫 번째 창에서
  • 첫 번째 창은 두 번째 창에서 작동합니다. 예제 3- 첫 번째 창의 인스턴스를 두 번째 창으로 전송하고 공개 메소드를 사용하십시오 :

    form2를 생성 할 때 이 예제는 다른 방법의 구현을 보여줍니다. 선택하는 방법은 특정 응용 프로그램 시나리오 및 코드 구조에 따라 다릅니다. 코드의 유지 보수 및 가독성을 향상시키기 위해 직접 공공 통제를 피하기 위해 공개 속성 또는 방법의 사용에 우선 순위를 부여하는 것이 좋습니다.

위 내용은 첫 번째 양식에서 DatagridView 행을 선택하여 ComboBox의 SelectedValue를 두 번째 양식에 설정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.