双11狂欢大促

盲盒赢 定制羽绒服

开启惊喜盲盒,抽取你的专属好礼

— 惊喜奖品抢先看 —

asp.net权限控制:父类控制子类控件

a619762 a619762 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
最近在做一个项目,涉及到权限方面的问题。 控制权限的思路是 页面通过继承一个父类,权限全部由父类来控制操作。

例如:子页面有个 修改按钮 ,当点击这个修改按钮时 ,先调入执行父类的权限检查方法,通过验证后有此修改权限后

才执行修改按钮事件 。否则将不执行。 而子页面的修改事件内 无调用父类方法。

我在父类通过重写 OnPreLoad 方法,将子页面的 修改按钮对象反射获得。



Control con = this.FindControl("Button1");
Button btn = (con as Button);

EventInfo info = btn.GetType().GetEvent("Click");


PropertyInfo propertyInfo = (typeof(Button)).GetProperty("Events", BindingFlags.Instance | BindingFlags.NonPublic);
EventHandlerList eventHandlerList = (EventHandlerList)propertyInfo.GetValue(btn, null);

FieldInfo fieldInfo = (typeof(Control)).GetField("EventClick", BindingFlags.Static | BindingFlags.NonPublic);
//fieldInfo为空 为什么获取不到?

Delegate d = eventHandlerList[fieldInfo.GetValue(null)];

if (d != null)
{
foreach (Delegate temp in d.GetInvocationList())
{
btn.Click -= temp as EventHandler;
}
}

btn.Click += new EventHandler(btntest_Click); // 跳转执行权限检查方法

base.OnPreLoad(e);





还有什么其他方法 让按钮事件先执行我定义的事件在后执行他本身事件? 坐等完美解答。
...全文

相关推荐

asp.net面向对象用户管理系统

asp.net面向对象用户管理系统,帮助初学者弄清面向对象...

zhangpf.net

基于ASP.NET的奶茶店点餐管理系统源码完整解析与实战

ASP.NET作为微软推出的Web应用开发框架,凭借其强大的后台处理能力、高效的运行机制以及与Visual Studio开发环境的深度集成,已成为企业级Web系统开发的重要选择。本章深入剖析ASP.NET的核心架构设计,涵盖HTTP请求生命周期、页面处理流程、服务器控件机制及HTTP模块(HttpModule)与处理程序(HttpHandler)的协同工作原理。通过对比Web Forms与MVC两种模式,明确本系统选用ASP.NET MVC的技术优势——高内聚低耦合、利于测试与团队协作。

竹石文化传播有限公司

ASP.NET经销商在线订货系统源码包,含商品展示、订单管理、促销配置与多级权限后台

直接可部署的ASP.NET B2B订货平台源码,专为品牌方对接经销商和终端客户设计。前台支持商品分类浏览(新品/特价/推荐)、图文详情页、多收货地址切换、配送方式选择、购物车实时增删改、订单备注留言、系统公告查看、在线客服入口及联系方式展示;后台覆盖完整订单生命周期:新建、按经销商名/订单号/时间范围快速查询、状态修改、备货标记、发货操作、快递单打印、Excel批量导出,还支持电话订单手动录入。内置促销活动模块(含秒杀专题页PromotionMiaosha.aspx)、客户分级定价策略、品牌管理、多级商品分

linux6sysadmin

Asp.net简单留言板源码(采用面向对象开发)

可以对留言进行回复<br>游客也可以留言,用户登录采用随机验证码<br>默认帐号密码51aspx<br>该示例采用面向对象方法开发<br>

zzl770529

asp.net core mvc权限控制:在视图中控制操作权限

本文主要介绍了asp.net core mvc权限控制:在视图中控制操作权限。具有很好的参考价值,下面跟着小编一起来看下吧

weixin_38631454
评论 5
收藏 已收藏
分享
返回顶部
a619762
.NET社区 62,274 成员 668,968 内容