我有一個mdi,其中有幾行代碼,如下所示。只有chage是正在打開的Form對象。所以我希望所有這些工作只使用單一的函數定義。 當我嘗試捕獲發件人時,它會在此處爲我提供ToolStipMenuItem。但我希望它的發件人是表單名稱,以便我可以打開其相應的表單。我如何縮短MDI中各種winform調用的代碼
private void purchaseInvoiceToolStripMenuItem_Click(object sender, EventArgs e)
{
Forms.PurchaseInvoice purinv = new DigitalInvy.Forms.PurchaseInvoice();
purinv.Show();
}
private void lederGroupsToolStripMenuItem_Click(object sender, EventArgs e)
{
Forms.LedgerGroup lgrp = new DigitalInvy.Forms.LedgerGroup();
lgrp.Show();
}
private void voucherEntryToolStripMenuItem_Click(object sender, EventArgs e)
{
Forms.VoucherEntry ventry = new DigitalInvy.Forms.VoucherEntry();
ventry.Show();
}
private void currencyToolStripMenuItem_Click(object sender, EventArgs e)
{
Forms.CurrencyMaster currency = new DigitalInvy.Forms.CurrencyMaster();
currency.Show();
}
private void countryToolStripMenuItem_Click(object sender, EventArgs e)
{
Forms.CountryMaster country = new DigitalInvy.Forms.CountryMaster();
country.Show();
}
我想要做這樣的事情
private void cMenuItem_Click(object sender, EventArgs e)
{
if(sender.GetType()==Form)
{
Forms.CountryMaster country = new DigitalInvy.Forms.CountryMaster();
country.Show();
}
}
@Hans:(o,e)=> createChild(new frmPurchaseInvoice());這條線是什麼意思。請詳細說明 – 2010-04-24 09:06:22
這是一個lambda表達式。如果您仍然使用C#2.0,那麼您可以使用匿名方法。帖子更新了一個例子。 – 2010-04-24 09:16:21