menu出了个小错误,
private PictureBoxSizeMode[] modemenuarray = {
PictureBoxSizeMode.StretchImage,
PictureBoxSizeMode.Normal
};
private int selectimagemode = 0;
private void menu_childclick(object sender, EventArgs e) {
if(sender is MenuItem){
MenuItem mi = (MenuItem)sender;
selectimagemode = mi.Index;
pb1.SizeMode = modemenuarray[mi.Index];
pb1.Invalidate();
}
}
是照着书写的。
有 两个菜单,根据它俩的index决定PictureBox的SizeMode属性为StretchImage或Normal;
两个菜单共用menu_childclick()方法。
错误是到menu_childclick()方法的if那行结果为假,进不去。
如果把if注释掉,那MenuItem mi = (MenuItem)sender;就有一个InvalidCastException异常
无法将类型为“System.Windows.Forms.ToolStripMenuItem”的对象强制转换为类型“System.Windows.Forms.MenuItem”。
怎么照书打也错了???
(另个,,书上写的是添加mainmenu可能是书有点老(刚才一看,是03年的),我用的是vs2008,没找到mainmenu,就用了MenuStrip)