FineUI 官方论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

本论坛已关闭(禁止注册、发帖和回复)
请移步 三石和他的朋友们

FineUI首页 WebForms - MVC & Core - JavaScript 常见问题 - QQ群 - 十周年征文活动

FineUI(开源版) 下载源代码 - 下载空项目 - 获取ExtJS - 文档 在线示例 - 版本更新 - 捐赠作者 - 教程

升级到 ASP.NET Core 3.1,快、快、快! 全新ASP.NET Core,比WebForms还简单! 欢迎加入【三石和他的朋友们】(基础版下载)

搜索
查看: 4248|回复: 6
打印 上一主题 下一主题

工具栏动态添加按钮的事件怎么写

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-8 10:15:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
工具栏中的按钮式根据权限动态添加的,如下:
#region 添加工具栏按钮
        private void AddToolbar()
        {
            ToolbarFill tbff = new ToolbarFill();
            tlr_Btn.Items.Add(tbff);
            DataTable dtToolbar = this.ReturndtToolbar();
            foreach (DataRow dr in dtToolbar.Rows)
            {
                ExtAspNet.Button btn = new ExtAspNet.Button();
                btn.ID = dr["Button_No"].ToString();
                btn.Text = dr["Button_Name"].ToString();
                btn.IconUrl = dr["Button_ico"].ToString();
                btn.AjaxLoadingType = AjaxLoadingType.Mask;
                btn.Click += new EventHandler(btn_Click);
                if (dr["Button_IsRemind"].ToString() == "Y")
                {
                    btn.ConfirmText = "确定要删除选中行记录及其该行相关所有记录么?";
                }
                //btn.Click += new EventHandler(btn_Click));
                tlr_Btn.Items.Add(btn);
            }           
        }
        private DataTable ReturndtToolbar()     //获取工具栏按钮列表
        {
            DataTable dtToolbar = new DataTable();
            Button_Bill.Instance.GetButtonInfo("User",User_Models.User_id);
            return dtToolbar;
        }

但是工具栏添加的按钮事件改怎么写了,求各位大神帮忙,
沙发
发表于 2012-9-8 21:39:52 | 只看该作者
function handleCmd(arg) {
    __doPostBack("HandleCmd", arg);
}

-------------------------------------

public void InitToolbar(Toolbar pToolStrip)
        {
            List<CMenu> cmdList = CMenu.FetchCmdItems(Ps.ModuleId);
            int j = 1;
            foreach (CMenu cmd in cmdList)
            {
                if (cmd.Hidden) continue;
                long commId = (long)System.Math.Pow(2, j++);// Convert.ToUInt64(commands[j]["CommandId"]);
                if ((Ps.RoleRight & commId) <= 0) continue;

                string param = Convert.ToString(cmd.Param);

                ExtAspNet.Button item = new ExtAspNet.Button();
                item.EnablePostBack = false;
                item.Text = cmd.Caption;
                if (!string.IsNullOrEmpty(cmd.Image))
                {
                    int icon = 0;
                    if (int.TryParse(cmd.Image, out icon))
                    {
                        item.Icon = (Icon)icon;
                    }
                    else
                    {
                        item.IconUrl = string.Format("res/menu/{0}.png", cmd.Image);
                    }
                }
                item.ID = string.Format("cmd{0}", cmd.Name);

                if (string.IsNullOrEmpty(cmd.Param))
                {
                    if (cmd.Name.ToLower().StartsWith("del"))
                    {
                        item.OnClientClick = "confirmCmd('" + cmd.Name + "','" + cmd.Caption + "');";
                    }
                    else
                    {
                        item.OnClientClick = "handleCmd('" + cmd.Name + "');";
                    }
                }
                else
                {
                    item.OnClientClick = cmd.Param;
                }
                pToolStrip.Items.Add(item);

            }


            pToolStrip.Items.Add(new ExtAspNet.ToolbarSeparator());
            pToolStrip.Items.Add(new ExtAspNet.ToolbarFill());
            ToolbarText txtMsg = new ToolbarText();
            txtMsg.ID = "txtMsg";
            pToolStrip.Items.Add(txtMsg);
        }
板凳
发表于 2012-9-27 06:52:52 | 只看该作者
乍么调用后台的方法
地板
发表于 2012-9-28 07:00:15 | 只看该作者
给toolbar加个ID,直接toolbat.Items.add(button)就可以了
5#
发表于 2012-10-3 08:40:47 | 只看该作者
搞定了没有啊,我也用到这个了,望共享一下方法,谢谢
6#
发表于 2012-10-3 10:50:08 | 只看该作者
代码不要放在If(!IsPostBack)里面就能测试成功,呵呵,
http://www.cnblogs.com/zhuimengke/articles/1283973.html
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|FineUI 官方论坛 ( 皖ICP备2021006167号-1 )

GMT+8, 2024-11-26 16:43 , Processed in 0.044255 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表