اگر این کار رو از طریق یک Interface انجام بدید بهتره ( یعنی Abstraction بیشتر رعایت شده )
public interface IBackColorChanger
{
void ChangeBackColod( Color color );
}
public class Form1 : System.Windows.Forms.Form, IBackColorChanger
{
private System.Windows.Forms.Button button1;
public void ChangeBackColod(Color color)
{
this.BackColor = color;
}
private void button1_Click(object sender, System.EventArgs e)
{
Form2 frm = new Form2( this );
frm.ShowDialog();
}
}
public class Form2 : System.Windows.Forms.Form
{
public IBackColorChanger _forchange;
private System.Windows.Forms.Button button1;
public Form2( IBackColorChanger ForChange ): this()
{
this._forchange = ForChange;
}
private void button1_Click(object sender, System.EventArgs e)
{
_forchange.ChangeBackColod( Color.Blue );
}
}