一个.NET的函数我看不懂

杨扬扬 2010-11-03 01:09:41
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
ToolStripMenuItem menuItem = (ToolStripMenuItem)sender;
menuItem.Checked = true;


ToolStripDropDownItem parentDropDown =
(ToolStripDropDownItem)menuItem.OwnerItem;


foreach (ToolStripMenuItem item in parentDropDown.DropDownItems)
{
if (menuItem.Equals(item))
continue;
else
item.Checked = false;
}
}

麻烦谁能帮我解释一下这个函数究竟做了什么事情,详细一点写注释最好,谢谢
...全文
199 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
q461714878 2010-11-09
  • 打赏
  • 举报
回复
没有深入思考,就不要出来瞎说!人云亦云!!!哎!!

这个事件是所有menuItem的公共click事件处理函数。
功能就是: 当你选了一个项时,必须将其他的已选中项取消选中。
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
//将你点击的项选中
ToolStripMenuItem menuItem = (ToolStripMenuItem)sender;
menuItem.Checked = true;

//获得该项的父对象
ToolStripDropDownItem parentDropDown =
(ToolStripDropDownItem)menuItem.OwnerItem;

//遍历父对象中所有的项,如果不是你刚才选中的那个项就就把它的checked属性设为false(即取消选中)
foreach (ToolStripMenuItem item in parentDropDown.DropDownItems)
{
if (menuItem.Equals(item))
continue;
else
item.Checked = false;
}
}
w250840443 2010-11-08
  • 打赏
  • 举报
回复
这个很详细了!!![Quote=引用 1 楼 zhubosa 的回复:]

//这是一个toolStripmenuItem的点击事件
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
//转为toolStripmenuItem
ToolStripMenuItem menuItem = (ToolStripMenuItem)sender;
//选中toolStripmen……
[/Quote]
changeZ 2010-11-04
  • 打赏
  • 举报
回复
关注....
LutzMark 2010-11-04
  • 打赏
  • 举报
回复
一个层级菜单点击事件用的方法
作用是点击该项后将该项置为true并将该项所在菜单的父级菜单所有非同类项置为false
threenewbee 2010-11-03
  • 打赏
  • 举报
回复
处理 ToolStripMenuItem (菜单项)的单击事件。
用户自己写的函数,和系统无关。
祁连雪狼之家 2010-11-03
  • 打赏
  • 举报
回复
一楼的说的很对了,也写的很详细,这样会看懂的吧。
flyerwing 2010-11-03
  • 打赏
  • 举报
回复
楼上说的很详细了!
就是选种那个把其他的没选种的样式设置成未选种样式.
zhubo_1117 2010-11-03
  • 打赏
  • 举报
回复
//这是一个toolStripmenuItem的点击事件
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
//转为toolStripmenuItem
ToolStripMenuItem menuItem = (ToolStripMenuItem)sender;
//选中toolStripmenuItem
menuItem.Checked = true;

//得到toolStripmenuItem父控件对象
ToolStripDropDownItem parentDropDown =
(ToolStripDropDownItem)menuItem.OwnerItem;

//循环toolStripmenuItem所有的下拉选项
foreach (ToolStripMenuItem item in parentDropDown.DropDownItems)
{
//如果item为toolStripmenuItem
if (menuItem.Equals(item))
continue;
else
//如果item不为toolStripmenuItem,取消item的选中
item.Checked = false;
}
}

17,741

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET Framework
社区管理员
  • .NET Framework社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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