C\#의뢰(크로스 창 조작 컨트롤)인 스 턴 스 프로 세 스 설명

2580 단어 의뢰 하 다.실례
효과 설명:FORM 1(form 2 열기)과 FORM 2(form 1 색상 변경)라 는 두 개의 창 이 있 습 니 다.시작 할 때 FORM 1 에서 button 컨트롤'form 2 열기'를 누 르 면 FORM 2 가 표 시 됩 니 다.FORM 2 의"form 1 색상 변경"을 클릭 하면 Form 1 색상 이 변 경 됩 니 다.
1.Form 2 에서:       우선 의뢰 와 의뢰 실례 Form 2 종 류 를 설명 합 니 다

public delegate void ChangeFormColor(bool topmost);
유형

01.public event ChangeFormColor ChangeColor; 
Form 2 단추 이벤트 호출 의뢰

private void button1_Click(object sender, EventArgs e) 
        { 
            ChangeColor(true);//  
        }
2.Form 1 에서:button 컨트롤"form 2 열기"의 click 이벤트 에 다음 코드 가 있 습 니 다.


    Form2 f = new Form2(); 
    f.ChangeColor += new ChangeFormColor(f_ChangeColor); 
    f.Show(); 
}
f.ChangeColor += new ChangeFormColor(f_ChangeColor);이 문장 은 가장 중요 합 니 다.+=을 입력 한 후에 Tab 를 두 번 누 르 면 자동 으로 리 셋 함 수 를 생 성 합 니 다.다음 과 같 습 니 다.

void f_ChangeColor(bool topmost) 
        { 
            this.BackColor = Color.LightBlue; 
            this.Text = " "; 
        }
3.전체 코드

using System; 
using System.Drawing; 
using System.Windows.Forms; 

namespace  

    public partial class Form1 : Form 
    { 
        public Form1() 
        { 
            InitializeComponent(); 
        } 
        private void button1_Click(object sender, EventArgs e) 
        { 
            Form2 f = new Form2(); 
            f.ChangeColor += new ChangeFormColor(f_ChangeColor); 
            f.Show(); 
        } 
        void f_ChangeColor(bool topmost) 
        { 
            this.BackColor = Color.LightBlue; 
            this.Text = " "; 
        } 
    } 
}

using System; 
using System.Windows.Forms; 

namespace  

    public delegate void ChangeFormColor(bool topmost); 
    public partial class Form2 : Form 
    { 
        public Form2() 
        { 
            InitializeComponent(); 
        } 
        public event ChangeFormColor ChangeColor; 
        private void button1_Click(object sender, EventArgs e) 
        { 
            ChangeColor(true);//  
        } 
    } 
}

좋은 웹페이지 즐겨찾기