toolStrip1 工具问题

L_Y_H_1_2_3_4 2014-10-15 03:43:02


如图:红色箭头指示的地方是我用toolStrip1控件实现出来的效果,问题出在:
这个控件的事件:

private void toolStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
{
if (!string.IsNullOrEmpty(FromHllep.NotNullString(e.ClickedItem.Tag)))
{
ShowForm(e.ClickedItem.Tag.ToString());
}
}

我在这个事件中用e.ClickedItem.Tag的方式一直取到的值是null,要怎么样,才能根据我单击那个就取那个值??是这个事件不能取到值?
例图:
我如果单击“商品分类”这个我要如何才能取到值?
...全文
180 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
L_Y_H_1_2_3_4 2014-10-16
  • 打赏
  • 举报
回复
引用 7 楼 Z65443344 的回复:
你绑定子项的时候,代码给它一个单击事件不就行了 然后用5楼的代码,判断sender,也就是单击的到底是哪个item
你说的很对 就这样可以解决了
於黾 2014-10-16
  • 打赏
  • 举报
回复
你绑定子项的时候,代码给它一个单击事件不就行了 然后用5楼的代码,判断sender,也就是单击的到底是哪个item
L_Y_H_1_2_3_4 2014-10-16
  • 打赏
  • 举报
回复
引用 5 楼 wangye380 的回复:
[quote=引用 3 楼 L_Y_H_1_2_3_4 的回复:] [quote=引用 2 楼 Z65443344 的回复:] 不能用e.ClickedItem.Tag Tag是需要你自己代码给进去值,它才会有值的,你直接取,必然是null 你看看是否还有text或name之类的属性
这个e.ClickedItem.Tag 我知道要自己赋值的,但是我是要取的子项的值,如子项:“商品分类”这些子项e.ClickedItem.Tag都有值的要怎么取??[/quote] 每个子项都绑定这个事件:
  private void ToolStripMenuItem_Click(object sender, EventArgs e)
    {
      ToolStripDropDownItem item = (ToolStripDropDownItem)sender;

      if(item.Text == "商品分类")
      {
          。。。。。。。。。。。
      }
    }
这样不可以吗??[/quote] 我的子项都绑定出来的没有子项单击事件
埋头苦练 2014-10-16
  • 打赏
  • 举报
回复
引用 3 楼 L_Y_H_1_2_3_4 的回复:
[quote=引用 2 楼 Z65443344 的回复:] 不能用e.ClickedItem.Tag Tag是需要你自己代码给进去值,它才会有值的,你直接取,必然是null 你看看是否还有text或name之类的属性
这个e.ClickedItem.Tag 我知道要自己赋值的,但是我是要取的子项的值,如子项:“商品分类”这些子项e.ClickedItem.Tag都有值的要怎么取??[/quote] 每个子项都绑定这个事件:
  private void ToolStripMenuItem_Click(object sender, EventArgs e)
    {
      ToolStripDropDownItem item = (ToolStripDropDownItem)sender;

      if(item.Text == "商品分类")
      {
          。。。。。。。。。。。
      }
    }
这样不可以吗??
於黾 2014-10-16
  • 打赏
  • 举报
回复
有值就可以直接取了啊,问题是你取出来的是null,说明根本没有值 你哪里给它赋值了?
L_Y_H_1_2_3_4 2014-10-16
  • 打赏
  • 举报
回复
引用 2 楼 Z65443344 的回复:
不能用e.ClickedItem.Tag Tag是需要你自己代码给进去值,它才会有值的,你直接取,必然是null 你看看是否还有text或name之类的属性
这个e.ClickedItem.Tag 我知道要自己赋值的,但是我是要取的子项的值,如子项:“商品分类”这些子项e.ClickedItem.Tag都有值的要怎么取??
於黾 2014-10-16
  • 打赏
  • 举报
回复
不能用e.ClickedItem.Tag Tag是需要你自己代码给进去值,它才会有值的,你直接取,必然是null 你看看是否还有text或name之类的属性
埋头苦练 2014-10-16
  • 打赏
  • 举报
回复
只知道一个方法,就是每个子项目单独写一个click事件! 坐等大神回复。

110,536

社区成员

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

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

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