小小飞鹰

     中国人缺少的是步骤,太急。练太极!
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

获得ToolBarButton或MenuItem的(Name)名称,终于搞定

Posted on 2006-04-14 17:29  小小飞鹰  阅读(1186)  评论(2编辑  收藏  举报

   
     最近用ToolBarButton的Tag关联menuItem的按钮事件,遍历ToolBar时想取得ToolBarButton的名称,找了半天没有搞定,后来用取得整个页面的控件的方法来取得 :)

     //用反射的方法来取得控件的(Name)属性fields[i].Name
    Type t = this.GetType();
    FieldInfo[] fields = t.GetFields(BindingFlags.NonPublic | BindingFlags.Instance);

    for (int i = 0; i < fields.Length; i++)
    {
     if (fields[i].FieldType.Name.Equals("ToolBarButton"))
     {
      ToolBarButton toolBarButton = (ToolBarButton) fields[i].GetValue(this);

      //如果需要判断权限(只能根据TAG来判断,故需要设置TAG的值为NAME)
      if (toolBarButton.Visible == true && toolBarButton.Tag != null)
      {
       strControlTag = fields[i].Name.ToUpper();
        }
     }
    }

    不知是否有兄台有更好的方法,还请告知小弟..