C# 事件处理程序

2023-11-26

如何在 C# 中检查 Button.Click 事件是否有关联的处理程序? If (button.Click != null) 抛出编译错误。


你不能。事件只是公开“添加处理程序”和“删除处理程序”——仅此而已。 (事实上​​,在 CLR 中,您还可以使用元数据将方法与“触发事件”相关联,但 C# 编译器永远不会生成该元数据。)某些事件发布者可能会提供其他方法来检查是否有任何订阅者(或者确实让你看到那些订阅者)但它不是事件模式本身的一部分。

See 我关于事件的文章欲了解更多信息,或查看events标签(我将添加到这个问题中)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C# 事件处理程序 的相关文章

  • 使用 ADAL v3 使用 ClientID 对 Dynamics 365 进行身份验证

    我正在尝试对我们的在线 Dynamics CRM 进行身份验证以使用可用的 API 我能找到的唯一关于执行此操作的官方文档是 https learn microsoft com en us dynamics365 customer enga
  • EntityHydrate 任务失败

    我最近安装了 Visual Studio 11 Beta 和 Visual Studio 2010 之后 我无法在 Visual Studio 2010 中构建依赖于 PostSharp 的项目 因此我卸载了 Visual Studio 1
  • C# 中的 Stack<> 实现

    我最近一直在实现递归目录搜索实现 并且使用堆栈来跟踪路径元素 当我使用 string Join 连接路径元素时 我发现它们被颠倒了 当我调试该方法时 我查看了堆栈 发现堆栈内部数组中的元素本身是相反的 即最近 Push 的元素位于内部数组的
  • 无法继承形状

    为什么我不能使用继承 a 的类Shapes class http msdn microsoft com en us library ms604615 28v vs 90 29 我需要延长Rectangle具有一些方法的类 但我想以与使用相同
  • 在 C++ 代码中转换字符串

    我正在学习 C 并开发一个项目来练习 但现在我想在代码中转换一个变量 字符串 就像这样 用户有一个包含 C 代码的文件 但我希望我的程序读取该文件并插入将其写入代码中 如下所示 include
  • C# 中一次性对象克隆会导致内存泄漏吗?

    检查这个代码 class someclass IDisposable private Bitmap imageObject public void ImageCrop int X int Y int W int H imageObject
  • MVC 5 中具有 ASP.NET Identity 的 Autofac 不会验证 OWIN 管道中的安全标记

    我在 MVC 5 中设置了 AutoFac 来与 ASP NET Identity 一起使用 表面上一切似乎都工作正常 即用户可以创建帐户并登录 但后来我发现 当安全标记更改时 用户不会注销 通过在 AspNetUsers 表中进行暴力破解
  • 用于在标头更改时重新编译的简单 C 项目的示例 makefile

    有谁有完整的 makefile 可以执行以下操作 如果 HEADER 文件发生更改 则重建项目 cpp 文件在 makefile 中列出 头文件未在 makefile 中列出 头文件允许与 cpp 文件具有不同的名称 部分cpp文件没有头文
  • OpenGL:如何检查用户是否支持glGenBuffers()?

    我检查了文档 它说 OpenGL 版本必须至少为 1 5 才能制作glGenBuffers 工作 用户使用的是1 5版本但是函数调用会导致崩溃 这是文档中的错误 还是用户的驱动程序问题 我正在用这个glGenBuffers 对于VBO 我如
  • Libev,如何将参数传递给相关回调

    我陷入了 libev 中争论的境地 通常 libev 在类似的函数中接收包 接收回调 没关系 但是实际操作中 我们需要派遣一个亲戚 写回调 根据收到的包裹处理具体工作 例如 S RECV MSG pstRecvMsg S RECV MSG
  • Linux 上的 RTLD_LOCAL 和dynamic_cast

    我们有一个由应用程序中的一些共享库构成的插件 我们需要在应用程序运行时更新它 出于性能原因 我们在卸载旧插件之前加载并开始使用新插件 并且只有当所有线程都使用旧插件完成后 我们才卸载它 由于新插件和旧插件的库具有相同的符号 我们dlopen
  • 在 azure blob 存储中就地创建 zip 文件

    我将文件存储在 Blob 存储帐户内的一个容器中 我需要在第二个容器中创建一个 zip 文件 其中包含第一个容器中的文件 我有一个使用辅助角色和 DotNetZip 工作的解决方案 但由于 zip 文件的大小最终可能达到 1GB 我担心在进
  • 如何在多线程应用程序中安全地填充数据并 Refresh() DataGridView?

    我的应用程序有一个 DataGridView 对象和一个 MousePos 类型的列表 MousePos 是一个自定义类 它保存鼠标 X Y 坐标 类型为 Point 和该位置的运行计数 我有一个线程 System Timers Timer
  • 当Model和ViewModel一模一样的时候怎么办?

    我想知道什么是最佳实践 我被告知要始终创建 ViewModel 并且永远不要使用核心模型类将数据传递到视图 这就说得通了 让我把事情分开 但什么是Model 和ViewModel一模一样 我应该重新创建另一个类还是只是使用它 我觉得我应该重
  • 调用 .ToArray() 时出现 ArgumentException

    我有一个经常被清除的列表 代码完全是这样的 VisitorAgent toPersist List
  • 如何在C#中控制datagridview光标移动

    我希望 datagridview 光标向右移动到下一列 而不是在向单元格输入数据后移动到下一行 我试图通过 dataGridView1 KeyDown 事件捕获键来控制光标 但这并不能阻止光标在将数据输入到单元格后移动到下一行 提前感谢你的
  • C:设置变量范围内所有位的最有效方法

    让我们来int举个例子 int SetBitWithinRange const unsigned from const unsigned to To be implemented SetBitWithinRange应该返回一个int其中所有
  • 将键码转换为相关的显示字符

    在 C Windows Forms 项目中 我有一个不提供 KeyPressed 事件的控件 它是一个 COM 控件 ESRI 映射 它仅提供 KeyUp 和 KeyDown 事件 包含关键事件参数 http msdn microsoft
  • winform c# 中的弹出窗口

    我正在开发一个需要弹出窗口的项目 但问题是我还希望能够通过表单设计器在此弹出窗口中添加文本框等 所以基本上我有一个按钮 当您单击它时 它将打开我在表单设计器中设计的另一个窗口 我一直在谷歌搜索 但还没有找到我需要的东西 所以我希望你们能帮助
  • 声明一个负长度的数组

    当创建负长度数组时 C 中会发生什么 例如 int n 35 int testArray n for int i 0 i lt 10 i testArray i i 1 这段代码将编译 并且启用 Wall 时不会出现警告 并且似乎您可以分配

随机推荐

  • ASP.NET Web 窗体是否阻止双击提交?

    我正在从事一个 ASP NET 4 0 Web Forms 项目 在中断了大约 5 年之后 我对提交行为感到困惑 在按钮的单击事件中 我使线程休眠 以便可以多次单击提交按钮 据我所知 ASP NET 正在阻止多次调用单击事件 这是真的 顺便
  • 参考折叠规则是什么?C++ 标准库如何利用它们?

    以下链接提供了 4 种形式的参考折叠 如果我正确的话 这些是唯一的 4 种形式 http thbecker net articles rvalue references section 08 html 从链接 A 变成A A 变成A A 变
  • 在Python中将turtle绘制的图像转换为PNG

    我正在用 Python 制作一个抽象艺术模板生成器 它接受最小半径 最大半径和圆数的输入 它在随机的地方绘制随机的圆圈 也满足用户的要求 我想将海龟图形转换为 PNG 以便用户可以随心所欲地编辑模板 但我不知道如何继续 这是我的代码 imp
  • 为什么这些创建引用的方式表现不同?

    下面的代码运行正确 let a mut 3 a 4 assert eq a 4 以下也运行 let a Some 3 let mut b a unwrap assert eq a unwrap 3 但以下内容无法编译 let a Some
  • 通过php流式传输mp3文件

    这是我的 php 代码 用于通过 php 流式传输 mp3 文件 set time limit 0 dirPath path of the directory songCode REQUEST c filePath dirPath song
  • 易失性重载?

    我听说 volatile 和 const 一样是重载的因素 如果函数被易失性参数重载 易失性版本什么时候被调用 我无法想象调用 volatile version 时的情况 这是一个例子 include
  • VS Code SCSS 自动编译为 CSS

    我是编程新手 刚刚开始学习 HTML CSS 对于编码 我开始使用 VS Code 我真的很喜欢它 到目前为止 我遇到的唯一问题是将 SCSS 自动编译为 CSS 我搜索并阅读了许多解决方案 我发现最好的解决方案是在 VS Code 终端中
  • PHP 解析 ISO 格式的日期 [重复]

    这个问题在这里已经有答案了 我目前正在使用 ConstantContact 它返回带有更新字段的 XML 格式如下 2013 02 13T08 35 34 195Z 我假设这是日期 c 格式 如何解析这个格式呢 斯特托时间没有返回正确的值
  • 问:如何在命令提示符下显示汉字

    是否可以在命令提示符下显示中文字符 如果是这样 设置是什么 如果您需要阅读简体中文 GBK 即代码页936 在dos提示符下输入以下命令 chcp 936 Update 微软推出了一个新的终端应用程序 https aka ms termin
  • 在 WPF 窗口的构造函数中,InitializeComponent() 之前和之后应该做什么?

    一般来说 我一直在初始化Window之前的自己InitializeComponent 并设置随后包含的控件 然而 我并没有那么一致 而且我还没有真正注意到排序有问题 所以 我 可能 正在做一些可怕的事情吗 特别是之前设置子控件的属性是否有问
  • 如何将 ABRecordRef 添加到 iPhone 中的 NSMutableArray?

    我想创建一个 ABRecordRef 数组来存储具有有效生日字段的联系人 NSMutableArray bContacts NSMutableArray alloc init ABAddressBookRef addressBook ABA
  • 如何使用
  • 而不是提交按钮提交表单?
  • 我希望能够提交表单 但不必单击提交按钮 我希望能够单击 li 元素并让它提交 任何帮助都会很棒 提前致谢 Ncoder 您可以在 LI 上放置一个 onclick 事件来调用表单提交事件 li
  • Oracle 和 SQL Server select (+) 等效

    在甲骨文中我有 SELECT t2 Regkood t2 naitatel t2 naitafaks t3 lahtiolekuaeg t1 FROM table1 t1 table2 t2 table3 t3 WHERE t1 clien
  • 为什么Java的类型推断这么弱?

    说吧 我有一个方法 public static
  • 如何在oracle数据库中存储BigInteger值

    我已经使用 JDBC 将 Java 程序连接到 Oracle 数据库 我想存储BigInteger数据库中的值 512 位 列的类型应该是什么 我正在尝试这样 我在数据库中获取了一列数字类型 我转换了BigInteger to BigDec
  • 如何在 Swift 中将 url.query 转换为字典?

    我有一个进入 AppDelegate 方法的 URL func application application UIApplication open url URL sourceApplication String annotation A
  • 与在 Rhino Mocks 中使用 Ordered() 等效的 AAA 语法是什么

    我一生都无法找到使用 Rhino 中的 Fluent AAA 语法来验证操作顺序的正确语法 我知道如何使用旧的学校记录 播放语法来做到这一点 MockRepository repository new MockRepository usin
  • Capybara + RSpec 仅在控制器规格中看到空白页。为什么?

    我正在尝试为一个简单的控制器编写控制器规范 但是 Capybara 看不到任何页面内容 但是 在我的浏览器中查看该网站的页面效果很好 我究竟做错了什么 谢谢 我的控制器规格 我的spec helper rb 我的宝石文件 您需要明确告诉您的
  • JavaScript 颜色渐变

    使用带或不带 Jquery 的 javascript 我需要根据开始和结束颜色创建颜色渐变 这可以通过编程来完成吗 结束颜色只会是开始颜色的较暗阴影 并且它用于无序列表 我无法控制 li 项目的数量 我正在寻找一种解决方案 允许我选择开始和
  • C# 事件处理程序

    如何在 C 中检查 Button Click 事件是否有关联的处理程序 If button Click null 抛出编译错误 你不能 事件只是公开 添加处理程序 和 删除处理程序 仅此而已 事实上 在 CLR 中 您还可以使用元数据将方法