Josh Smith 的 MVVM 示例应用程序中有关 EventHandler 的问题

2024-04-21

以下代码来自 Josh Smith 的 MVVM 示例:

/// <summary>
/// Raised when this workspace should be removed from the UI.
/// </summary>
public event EventHandler RequestClose;

void OnRequestClose()
{
    //if (RequestClose != null)
    //        RequestClose(this, EventArgs.Empty);
    EventHandler handler = this.RequestClose;
    if (handler != null)
        handler(this, EventArgs.Empty);
 }

注释行是我添加的。我的问题是注释行会与未注释行做同样的事情,对吗?那么为什么要创建另一个 EventHandler 引用呢?或者我在这里遗漏了什么?谢谢


坦莫伊是对的。这样做是为了防止在“if”之后但在“RequestClose()”之前的其他线程中 RequestClose 被更改(例如,为 null)的可能性。

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

Josh Smith 的 MVVM 示例应用程序中有关 EventHandler 的问题 的相关文章

  • Windows 10 Mobile (10.0.14393) 地理围栏后台任务 (LocationTrigger)

    自从10 0 14393 周年纪念更新 LocationTrigger似乎不起作用 我有 Windows Phone 8 1 应用程序 也适用于 UWP 应用程序 输出到的便携式库Windows Runtime Component图书馆 w
  • 通过增加索引之和来生成排序组合的有效方法

    对于启发式算法 我需要一个接一个地评估特定集合的组合 直到达到停止标准 由于它们很多 目前我正在使用以下内存高效迭代器块生成它们 受到 python 的启发 itertools combinations http docs python o
  • 在 VS2017 下使用 Conan 和 CMake 项目进行依赖管理

    我正在尝试使用 CMake 与 VS2017 集成为 C 设置一个开发环境 以便在 Linux x64 下进行编译 为了更好地管理依赖关系 我选择使用 Conan 但我对这个软件还很陌生 我想知道让 VS2017 识别项目依赖关系的最佳方法
  • Subversion 和 Visual Studio 项目的最佳实践

    我最近开始在 Visual Studio 中处理各种 C 项目 作为大型系统计划的一部分 该系统将用于替换我们当前的系统 该系统是由用 C 和 Perl 编写的各种程序和脚本拼凑而成的 我现在正在进行的项目已经达到了颠覆的临界点 我想知道什
  • 将字节数组转换为托管结构

    更新 这个问题的答案帮助我编写了开源项目GitHub 上的 AlicanC 现代战争 2 工具 https github com AlicanC AlicanC s Modern Warfare 2 Tool 你可以看到我是如何阅读这些数据
  • 为什么Apache MPM prefork.c 使用互斥体来保护accept()?

    我坐下来读书Apache 的 MPM prefork c http code metager de source xref apache httpd server mpm prefork prefork c这段代码使用了一个名为accept
  • 从 C 结构生成 C# 结构

    我有几十个 C 结构 我需要在 C 中使用它们 典型的 C 结构如下所示 typedef struct UM EVENT ULONG32 Id ULONG32 Orgin ULONG32 OperationType ULONG32 Size
  • 劫持系统调用

    我正在编写一个内核模块 我需要劫持 包装一些系统调用 我正在暴力破解 sys call table 地址 并使用 cr0 来禁用 启用页面保护 到目前为止一切顺利 一旦完成 我将公开整个代码 因此如果有人愿意 我可以更新这个问题 无论如何
  • 对 boost 库的依赖项没有完整路径

    我已经成功构建了动态库 依赖于使用自定义前缀构建和安装的 boost 库 b2 install prefix PREFIX 然而 当我跑步时otool L在我的库中 我得到如下输出 libboost regex dylib compatib
  • 将带有 glut 的点击坐标添加到向量链接列表中

    我想创建一个向量链接列表 并在 GLUT 库的帮助下获取点击的位置并将它们附加到链接列表中 这些是我写的结构 typedef struct vector int x int y Vector typedef struct VectorLis
  • 为什么 clang 使用 -O0 生成低效的 asm(对于这个简单的浮点和)?

    我正在 llvm clang Apple LLVM 版本 8 0 0 clang 800 0 42 1 上反汇编此代码 int main float a 0 151234 float b 0 2 float c a b printf f c
  • 预处理后解析 C++ 源文件

    我正在尝试分析c 使用我定制的解析器的文件 写在c 在开始解析之前 我想摆脱所有 define 我希望源文件在预处理后可以编译 所以最好的方法是运行C Preprocessor在文件上 cpp myfile cpp temp cpp or
  • OpenCV 2.4.3 中的阴影去除

    我正在使用 OpenCV 2 4 3 最新版本 使用内置的视频流检测前景GMG http docs opencv org modules gpu doc video html highlight gmg gpu 3a 3aGMG GPU算法
  • 默认析构函数做了多少事情

    C 类中的默认析构函数是否会自动删除代码中未显式分配的成员 例如 class C public C int arr 100 int main void C myC new C delete myC return 0 删除 myC 会自动释放
  • C++11 动态线程池

    最近 我一直在尝试寻找一个用于线程并发任务的库 理想情况下 是一个在线程上调用函数的简单接口 任何时候都有 n 个线程 有些线程比其他线程完成得更快 并且到达的时间不同 首先我尝试了 Rx 它在 C 中非常棒 我还研究了 Blocks 和
  • .NET 客户端中 Google 表格中的条件格式请求

    我知道如何在 Google Sheets API 中对值和其他格式进行批量电子表格更新请求 但条件格式似乎有所不同 我已正确设置请求 AddConditionalFormatRuleRequest formatRequest new Add
  • asp.net网格分页的SQL查询

    我在用iBatis and SQLServer 使用偏移量和限制进行分页查询的最佳方法是什么 也许我添加该列ROW NUMBER OVER ORDER BY Id AS RowNum 但这只会阻止简单查询的数据访问 在某些情况下 我使用选择
  • 使用 mingw32 在 Windows 上构建 glew 时“DllMainCRTStartup@12”的多个定义

    我关注了这个主题 使用 mingw 使建筑物在 Windows 上闪闪发光 https stackoverflow com questions 6005076 building glew on windows with mingw 6005
  • 初始化 LPCTSTR /LPCWSTR [重复]

    这个问题在这里已经有答案了 我很难理解并使其正常工作 基本上归结为我无法成功初始化这种类型的变量 它需要有说的内容7 2E25DC9D 0 USB003 有人可以解释 展示这种类型的正确初始化和类似的值吗 我已查看此站点上的所有帮助 将项目
  • 受限 AppDomain 中的代码访问安全异常

    Goal 我需要在权限非常有限的 AppDomain 中运行一些代码 它不应该访问任何花哨或不安全的内容 except对于我在其他地方定义的一些辅助方法 我做了什么 我正在创建一个具有所需基本权限的沙箱 AppDomain 并创建一个运行代

随机推荐

  • 更有效的循环方式?

    我有来自一个更大脚本的一小段代码 我发现当函数t area被调用时 它负责大部分运行时间 我自己测试了这个函数 它并不慢 我相信它需要运行很多次 所以需要花费很多时间 这是调用该函数的代码 tri area np zeros numx nu
  • 当存在变量空间分隔列时,在 python (numpy) 中加载数据集

    我有一个包含数字数据的大数据集 并且在其某些行中存在分隔列的可变空间 例如 4 5 6 7 8 9 2 3 4 当我使用这条线时 dataset numpy loadtxt dataset txt delimiter 我收到此错误 Valu
  • Foreach - 并行对象

    最近我们开始编写需要很长时间才能完成的脚本 因此我们深入研究了 PowerShell 工作流程 阅读一些文档后 我了解了基础知识 但是 我似乎找不到一种方法来创建 PSCustomObject 对于一个内的每个单独的项目foreach pa
  • 如何在 R 中迭代生成组合? [复制]

    这个问题在这里已经有答案了 所以我目前正在使用以下代码来生成我的组合 组合 x y 但问题是函数存储了所有可能的组合 我不想存储它们 我只想通过循环或其他方式生成它们 这对我的程序来说会更有效率 有没有办法通过 for 循环生成组合而不是全
  • 如何从另一个目录运行 Maven(无需 cd 到项目目录)?

    假设我的maven项目位于 some location project我当前的位置是 another location 如何在不更改项目位置的情况下运行 Maven 构建cd some location project 您可以使用参数 f
  • 模拟迭代行为

    我有一个具有迭代行为的界面 但在 Rhinomocks 中模拟它时遇到了麻烦 示例接口和类是我的问题的一个非常简单的版本 每次调用 LineReader Read 时 LineReader CurrentLine 都应返回不同的值 下一行
  • 如何使用 API 路由在 Next.js 上下载文件

    我正在使用 next js 我有一个第三方服务 我需要从中检索 PDF 文件 该服务需要一个 API 密钥 我不想在客户端公开该密钥 这是我的文件 api getPDFFile js const options method GET enc
  • 使用 sqlite json_each 过滤 json 数组中的多个项目

    我有一个包含以下架构和数据的 sqlite 表 CREATE TABLE Feeds id INTEGER PRIMARY KEY AUTOINCREMENT groups JSON NOT NULL DEFAULT INSERT INTO
  • 哪种快速方法可以并行化 2D NumPy 数组的元素乘法?

    我使用 NumPy 函数einsum https docs scipy org doc numpy reference generated numpy einsum html执行两个 2D NumPy 数组的逐元素乘法和求和 np eins
  • 自动 PayPal 付款

    我正在寻找一种方法来自动将钱从我的 PayPal 帐户发送到其他 PayPal 帐户 通过 PHP 这可能吗 就像是 recievers array email protected cdn cgi l email protection em
  • 使用 bootstrap-modal 作为 Backbone.js 视图

    我正在尝试创建一个基于 Twitter 引导模式的 Backbone js 视图 该视图通过以下方式使用 Backbone 的自动事件委托 events视图的属性 不幸的是 bootstrap modal 似乎破坏了 Backbone 的事
  • 帮助查找内存泄漏(一般提示)

    这是在 iOS 上 设备是 iPad 发生的情况如下 我在设备上运行应用程序或使用 Xcode 进行调试和运行 5 分钟后 我收到 1 级内存警告 一分钟后 我收到 2 级内存警告 又过了一分钟 Program received signa
  • Redux-saga takeLatest 有条件地

    我有一个与 redux saga 相关的问题 有没有办法实现 takeLatest 但有条件 例如 我有一个歌曲类型的动态列表 Rap Pop Hip hop 我想按歌曲类型获取歌曲 我定义了一个类型为 FETCH SONGS BY TYP
  • Spring RestTemplate 中不存在必需的字符串参数

    我在使用 RestTemplate 发布 2 个参数时遇到问题 a String 多部分文件 我不认为我的控制器有问题 因为它非常基本 看来控制器没有收到名称参数 你能告诉我我的代码有什么问题吗 控制器 收件人 RequestMapping
  • Object.getPrototypeOf() 混淆

    Object getPrototypeOf obj 如何工作 根据定义 Object getPrototypeOf obj 应该返回对象的原型属性 或者以其他方式与 obj constructor prototype 相同 用 new 创建
  • Java:在循环中实例化变量:好还是坏风格?

    我有一个简单的问题 通常我会写这样的代码 String myString hello for int i 0 i lt 10 i myString hello again 因为我认为以下不会是好的样式 因为它会创建太多不必要的对象 for
  • 查找嵌套字典和列表中某个键的所有出现位置

    我有一本这样的字典 id abcde key1 blah key2 blah blah nestedlist id qwerty nestednestedlist id xyz keyA blah blah blah id fghi k
  • 在 Apache Beam 中监视与文件模式匹配的新文件

    我在 GCS 或其他受支持的文件系统上有一个目录 外部进程正在向该目录写入新文件 我想编写一个 Apache Beam 流式传输管道 它可以连续监视此目录中的新文件 并在每个新文件到达时读取和处理它 这可能吗 从 Apache Beam 2
  • 需要使用 Browserify 和 browserify-rails 进行链轮预处理的文件

    我在用着browserify rails https github com browserify rails browserify rails我试图让链轮预处理包含链轮指令的文件 这样当我require 它使用 browserify 它将包
  • Josh Smith 的 MVVM 示例应用程序中有关 EventHandler 的问题

    以下代码来自 Josh Smith 的 MVVM 示例