menu出了个小错误,

angel725 2009-08-21 01:08:46
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)
...全文
88 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
threenewbee 2009-08-28
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 angel725 的回复:]
引用 3 楼 dancingbit 的回复:
MenuItem mi = (MenuItem)sender;
-------------------------------
MenuStripItem msi=(MenuStripItem)sender;

尽信书,不如无书。


你刚学新东西的时候不看书!!
不照书做做例子!

莫非你是传说中的天才。
[/Quote]
呵呵,3楼的意思是不要完全相信书,不是完全不看书——完全不看书,连书上说了什么都不知道,也就谈不上相信不相信了。
angel725 2009-08-27
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 dancingbit 的回复:]
MenuItem mi = (MenuItem)sender;
-------------------------------
MenuStripItem msi=(MenuStripItem)sender;

尽信书,不如无书。
[/Quote]

你刚学新东西的时候不看书!!
不照书做做例子!

莫非你是传说中的天才。
threenewbee 2009-08-21
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 angel725 的回复:]
谢谢,,倒是可以了。

还有点不明白。

mainmenu 和 menustrip不一样吗?

在mainmenu右边的属性里我也没看到index属性,为什么它能用呢。

要是用menustrip和上面一样的效果,要怎么做
[/Quote]
其实大同小异,但是略有不同。

你可以理解为MenuStrip是VS2005新增加的,用来实现类似Office2003这样比较漂亮的,带图标的菜单。
而MainMenu是对系统标准菜单的封装。
dancingbit 2009-08-21
  • 打赏
  • 举报
回复
MenuItem mi = (MenuItem)sender;
-------------------------------
MenuStripItem msi=(MenuStripItem)sender;

尽信书,不如无书。
angel725 2009-08-21
  • 打赏
  • 举报
回复
谢谢,,倒是可以了。

还有点不明白。

mainmenu 和 menustrip不一样吗?

在mainmenu右边的属性里我也没看到index属性,为什么它能用呢。

要是用menustrip和上面一样的效果,要怎么做
threenewbee 2009-08-21
  • 打赏
  • 举报
回复
在左边工具箱里面点右键,添加
找到MainMenu控件,加上来,就有了。

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧