首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >分隔一个类的枚举

分隔一个类的枚举
EN

Stack Overflow用户
提问于 2019-06-26 14:19:22
回答 1查看 59关注 0票数 0

我在我的所有UserControls中创建了一个枚举,其中包含可用于此UC上显示的此对象的操作。例如:

代码语言:javascript
运行
AI代码解释
复制
private enum ControlActions
  {
     New,
     Edit,
     Delete
  }

几乎在每个UserControl中,操作都是相同的,所以我想创建一个全局枚举。但问题是,有些UserControls没有该对象的所有这些操作(有时只有一个,有时只有两个)。所以我的问题是,有没有一种方法可以创建一个全局枚举并对其进行分隔?

例如:在UserControl1中新建和编辑操作UserControl2中的删除操作UserControl3中的新建、编辑和删除操作

EN

回答 1

Stack Overflow用户

发布于 2019-06-26 14:45:12

您可能无法在枚举本身中解决此问题,但您可以编写一个扩展方法来确定某个控件是否允许该操作。

代码语言:javascript
运行
AI代码解释
复制
public enum ControlActions
{
    New,
    Edit,
    Delete
}

public static class ControlActionsExtender
{
    public static bool IsActionAllowed(this ControlActions controlAction, Type controlType)
    {
        switch (controlAction)
        {
            case ControlActions.New:
                return controlType == typeof(UserControlA) || controlType == typeof(UserControlB) || controlType == typeof(UserControlC);
            case ControlActions.Edit:
                return controlType == typeof(UserControlA);
            case ControlActions.Delete:
                return controlType == typeof(UserControlA) || controlType == typeof(UserControlC);
        }
        return false;
    }
}

然后,在用户控件中,可以通过调用以下命令来确定是否允许某个操作:

代码语言:javascript
运行
AI代码解释
复制
// See if we are allowed to create a new item from this control
ControlActions.New.IsAllowed(this.GetType());
票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56775017

复制
相关文章
如何使用腾讯云45元代金券购买带宽按量计费的云主机?
如何使用腾讯云45元代金券购买带宽按量计费的云主机?
贺嘉
2017/03/20
9K0
如何使用腾讯云45元代金券购买带宽按量计费的云主机?
新的计费系统(在线计费+准实时计费)
更多有特点的服务(入网简单、控制费用支出容易,为客户提供高额度的消费和国际漫游)成为了吸引客户的重要手段;
安德玛
2022/03/05
2.2K0
支付--出款中如何计费
出款系统来说: 付款方就是出款的源头(通常为商户),收款方就是收钱的那一方(通常为个人)
贾博岩
2018/08/02
1.2K0
支付--出款中如何计费
如何购买SSL证书?
互联网在我们的日常生活中已经熟悉的不能在熟悉了,网上购物,在线咨询等已经成为我们习以为常的行为。但这种习惯也同样给我们带来了风险,互联网安全问题越来越受到重视,信息泄露等安全问题已经严重的影响了我们的生活,而SSL证书因此而产生,保护用户数据安全,让数据在传输过程中通过加密来保障信息不被篡改。那么如何购买SSL证书呢?
柳絮云泡泡
2023/03/15
7.1K0
如何购买SSL证书?
如何购买服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
用户5048372
2022/09/19
14.6K0
Fundebug计费标准解释:事件数是如何定义的?
Fundebug提供了多个不同档位的付费套餐,其主要收费标准是按照事件数来确定的。当前Fundebug各个付费套餐每月的事件数及其价格如下表:
Fundebug
2019/12/30
6440
解的个数 未完成
#include<iostream> #include<cstdio> using namespace std; int x,y; int tot=1; int a,b,c,p,q,r,s; int exgcd(int a,int b,int & x,int & y) {     if(b==0)     {         x=1;         y=0;         return a;     }     int r=exgcd(b,a%b,x,y);     int tmp;     tmp=x
attack
2018/04/12
6720
用户如何域名购买呢?购买域名需要注意什么?
随着网络时代的快速发展,域名也随之发展壮大了起来,访问网页一般都是通过域名这个载体实现的,如果用户自己建设了一个网站,或者公司开发了一个网站的话,必须要拥有自己的域名才可以,那么用户如何域名购买呢?购买域名需要注意什么?
用户8739990
2021/08/13
28.7K0
付费广告的计费模式
记一下互联网广告术语 CPC:按点击付费(Cost Per Click) 根据广告被点击的次数收费 CPA:按转化动作付费(Cost Per Action) 按广告投放实际效果计价方式的广告,即按回应的有效问卷或注册来计费,而不限广告投放量 CPS:销售额付费(Cost Per Sale) 实际销售产品数量来换算广告刊登金额 CPD:按天付费(Cost per day) 按天收费,实际的广告合作中根据行业不同还包括Cost per Download的缩写含义,意思是依据实际下载量收费 CPT:按时间收费(
薛定喵君
2019/11/05
1.7K0
如何购买 GPU 服务器?
GPU 云服务器支持四种镜像类型:公共镜像、自定义镜像、共享镜像、镜像市场。具体详情请单击 了解镜像 >>。 对于刚开始使用腾讯云的用户,可选择【公共镜像】,并根据需要挑选版本。
用户5915919
2019/09/16
14.1K0
如何购买 GPU 服务器?
如何购买合适的工业机器人
我们经常提到工业机器人,从字面上来说,机器人这个词汇不难理解,但是如果真正想要买一台工业机器人的话,就还得需要知道更多。本文将为你介绍几个在购买工业机器人时需要了解的主要参数。 工业机器人应用 首先要知道的是你的机器人要用于何处。这是你选择需要购买的机器人种类时的首要条件。如果你只是要一个紧凑的拾取和放置机器人,Scara机器人是不错的选择。如果想快速放置小型物品,Delta机器人是最好的选择。如果你想机器人在工人旁边一起工作,你就应该选择协作机器人。 本文主要的方向是工业机器人。这一类的机器人适用于非常多
机器人网
2018/04/12
1.3K0
如何购买合适的工业机器人
如何购买云服务器 服务器购买平台怎么找
从事互联网工作的小伙伴应该都知道,网站除了需要程序外,还需要域名跟空间。空间也可以用云服务器,如果搭建的网站较大,可以考虑使用云服务器,尤其是对大企业而言,空间的带宽以及绑定域名有限,不利于大门户网站的使用。那么如何购买云服务器呢?
用户8715145
2021/09/17
29.3K0
如何购买云服务器 服务器购买平台怎么找
光模块购买该如何选择?
经常买光模块的人都知道,现在市场上生产光模块技术门槛越来越低,市面上各种光模块愈来愈多,如原装的,假原装的,兼容的,二手的。这些模块之间的兼容性也影响了使用者网络的质量。光纤模块通常需要确认兼容码,因为目前市面上存在2种,一种是高性能的兼容模块,一种是原交换机品牌光模块.两者之间的价格差距较大。
晟科通信
2020/06/10
3.2K0
光模块购买该如何选择?
如何购买比特币,比特币的价值何在?
对于不玩游戏的人来说,刚一听到比特币这个名字还以为是和游戏币的价值差不多,只能在游戏里使用的虚拟货币,经过稍微的了解后发现原来比特币现下这么火还是有一定的原因的。如何购买比特币,比特币的价值何在?来了解一下吧!
用户8739990
2021/07/12
9620
如何购买比特币,比特币的价值何在?
如何购买 AMD GPU 服务器?
GPU 渲染型 GA2 支持四种镜像类型:公共镜像、自定义镜像、共享镜像、服务市场。
用户5915189
2019/09/13
12.1K0
如何购买 AMD GPU 服务器?
学生服务器如何购买?
腾讯云学生服务器适用于建站、学习等轻量级web应用场景,主要是为了帮助想从事计算机行业的学生入门云计算,获得更多的实践经验,那学生服务器如何购买呢? 腾讯云学生服务器地址 https://cloud.
return null
2019/09/02
11.2K0
【SeeMusic】购买付费版本 ( 进入购买页面 | 购买流程 )
【SeeMusic】下载安装并注册 SeeMusic 软件 【SeeMusic】购买付费版本 ( 进入购买页面 | 购买流程 )
韩曙亮
2023/03/29
10.4K0
【SeeMusic】购买付费版本 ( 进入购买页面 | 购买流程 )
如何购买腾讯云服务器
从实践案例出发,描述如何购买腾讯云的服务器。云服务器(Cloud Virtual Machine)是一种专业的高性能高稳定的弹性伸缩的计算服务,您可以在几分钟内轻松获取并配置您的CVM计算实例。
腾讯云开发者社区
2016/10/20
118.5K4
如何购买腾讯云服务器
点击加载更多

相似问题

提取最小值和最大值

15

从ColumnDataSource列提取最大值和最小值

18

BeautifulSoup -从<head>和</head>中提取文本

29

从行号grep中提取最小值和最大值

511

提取每日最大值和最小值

25
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档