в формах C# Мне нужен код для добавления второй формы в мою существующую. это то, что я пробовал:Новая форма в основной форме
Первая форма:
public partial class frmMain : Form
{
public frmMain()
{
InitializeComponent();
}
private void frmMain_Load(object sender, EventArgs e)
{
frmMain fM = new frmMain();
fM.KeyPress += new KeyPressEventHandler(MMForm);
}
private void MMForm(object sender, KeyPressEventArgs e)
{
Keys KP; KP = (Keys)sender;
if (KP == Keys.Escape) { frm2 fM2 = new frm2(); fM2.Show(); }
}
}
И это Вторая форма:
public class frm2 : Form
{
public frm2()
{
frm2 fM2 = new frm2();
fM2.Height = 200; fM2.Width = 200;
Controls.AddRange(new System.Windows.Forms.Form[] { fM2 });
}
}
Что мне не хватает?
EDIT: забудьте об этом на мгновение. Даже если я сделаю это, как было предложено там, я получаю сообщение об ошибке, когда я нажимаю клавишу.
An unhandled exception of type 'System.InvalidCastException' occurred in Project 09.exe
Additional information: Specified cast is not valid.
чем проблема? –
, вы можете установить высоту и ширину, используя это. если вы хотите установить его для текущего экземпляра.Я немного запутался из-за этого нового объекта создания frm2 внутри конструктора. – ninja
Что вы пытаетесь сделать здесь, вы хотите запустить frm2 при нажатии клавиши Escape на основной форме? – Habib