我在从父类继承子类继承MenuStrip时遇到问题。问题在于,在子类中,我尝试编辑继承的MenuStrip,但无法这样做,并且在属性中,一切都被禁用,就好像修改器是私有的一样。
在父类的MenuStrip的属性中,其修饰符处于公共状态,并且与该控件关联的事件在虚拟状态。
namespace LogicaDelJuego
{
public partial class TableroPrincipal : Form
{
public virtual void nuevoJuegoToolStripMenuItem_Click(object sender, EventArgs e)
{
try
{
DatosPersonales data = new DatosPersonales();
data.Show();
data.enviarDatos += new DatosPersonales.EnviarDatosEventHandler(ConfiguracionInicial);
Inicializador();
HabilitarBotones(true);
}
catch(Exception ex)
{
MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
}
}
}
子类中有两个重写的方法。
using System;
using LogicaJUego;
namespace SocketServidor
{
public partial class TableroServidor : TableroPrincipal
{
SetupServer setup;
public TableroServidor()
{
setup = new SetupServer();
setup.Show();
InitializeComponent();
}
public override void nuevoJuegoToolStripMenuItem_Click(object sender, EventArgs e)
{
base.nuevoJuegoToolStripMenuItem_Click(sender, e);
}
public override void partidaToolStripMenuItem_Click(object sender, EventArgs e)
{
base.partidaToolStripMenuItem_Click(sender, e);
}
}
}
但是我仍然不能在子类中编辑我的MenuStrip,我什至不能使其扩展。另外,这些按钮与这些事件相关联。
这是父类中菜单的图像: