事件以另一种形式发生后更新一种形式

2023-12-27

我正在努力确定根据另一个表单中发生的事件更新一个表单的最佳方法。

例如,我的应用程序有一个表单,显示零件列表(即库存、非库存等...)ListView。我的应用程序还有一个表单,允许用户添加新部件。该应用程序不是MDI.

每次从其他表单插入、更新或删除项目时,更新显示部件列表的表单的最佳选项是什么?

我意识到,如果表单是从第一个表单实例化的,我可以将引用传递到第二个表单中,但是,我不希望将表单紧密耦合。我已经尝试过自定义事件,但是我认为这将需要在中间实现一个类来接管表单的实例化,以便它可以访问这两个对象。

我想我可以使用 .NET 内置属性。我最好的选择是什么?


如果我们只是谈论两种形式,我会采用简单的路线(例如,不要使用工厂类)。

在您的接收者表单中添加一个事件(例如ProductListChanged)

添加一个全局变量(通过静态类属性(见下文))来保存接收者表单。

public class globals {
  public static ProductForm productForm {get;set;}
}

然后,您可以通过全局静态属性引发 ProductListChanged 事件。

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

事件以另一种形式发生后更新一种形式 的相关文章

随机推荐

  • 如何捕获和解析从 Google Maps v3 API 返回的 JSON?

    我写下了以下代码 var url http maps googleapis com maps api geocode json latlng position coords latitude position coords longitud
  • 在 Android 中旋转可绘制对象

    怎样才能一个Drawable从资源加载并在绘制时旋转 例如 我想画一个箭头 并在绘制时能够将其旋转到不同的方向 您需要使用 Bitmap 和 Canvas 类函数来准备可绘制对象 Bitmap bmpOriginal BitmapFacto
  • C++ 指向成员函数的指针,替换 __closure

    不久前 Borland 在他们的 BCB 环境中引入了 C 语言的扩展 这个扩展是一个 closure 关键字 问题是 是否可以用普通 C 或 C 11 实现此类功能 如果您不熟悉 closure 关键字 下面的代码在注释中提供了解释 提前
  • 使用 Google 标签管理器提取部分 URL

    所以我有这个网址 https www site be pand titel van het pand t8500 17082 4 https www site be pand titel van het pand t8500 17082 4
  • MySQL 数据库中如何处理并发查询?

    我正在使用 MySQL 数据库 我想知道如果我同时进行多个 500 或更多 查询以便从多个表中获取信息 这些查询是如何处理的 顺序还是并行 查询始终在多个会话 即客户端连接 之间并行处理 单个连接上的所有查询都会相继运行 可以根据可用的服务
  • Android 游戏 - 记录时间

    我有一款安卓益智游戏 当谜题开始时 我取当前时间 long startTime System currentTimeInMillis 当玩家完成拼图时 我再次计时 减去开始时间并计算出经过的时间 这一切都好 我的问题是当应用程序中断时该怎么
  • Magento:如何让观察者在外部脚本中工作?

    据我所知 当脚本在 Magento 外部运行时 事件触发时不会调用观察者 为什么 我如何解决它 以下是导致我提出这个问题的原始问题 问题是应用目录规则的观察者永远不会被调用 事件触发 但观察者没有接收到它 我正在运行一个加载 Magento
  • 下载 Graphlab 依赖项 get_dependencies() 时出现问题

    当我尝试下载运行所需的依赖项时遇到问题graphlab I do import graphlab我得到以下信息 ACTION REQUIRED Dependencies libstdc 6 dll and libgcc s seh 1 dl
  • 是否可以序列化 C# 代码块?

    我正在使用 C NET http en wikipedia org wiki NET Framework3 5 是否可以序列化一段代码 将其传输到某个地方 反序列化 然后执行它 其用法示例如下 Action pauxPublish dele
  • git中如何忽略以#开头的文件

    我想知道是否有可能 如果可能的话如何实现 通过 gitignore 忽略 git 中以 开头的文件 我已经尝试过了 myfile 没有运气 这是正确的语法
  • 更改 MySQL 中的列数据类型而不丢失其他元数据(DEFAULT、NOTNULL...)

    If I do ALTER TABLE testtable MODIFY mycolumn NEWDATATYPE 我失去了其他定义 例如 NOT NULL COMMENTS DEFAULT 值 有没有办法做到这一点 在 PostgreSQ
  • Rails Paperclip 如何使用 ImageMagick 的滤镜选项?

    我最近用 Rails 实现了 Paperclip 并想尝试 ImageMagick 中的一些过滤器选项 例如blur http www imagemagick org Usage blur 我无法找到任何如何执行此操作的示例 它是否通过 s
  • 如何增加搜索栏值

    我想创建分为 5 个部分的搜索栏 below Average Average and Excellent 对于每一步 我都希望像这样的搜索栏一样增量 默认 0 最大值 100 i want seek bar values like this
  • 如何获得有关枚举单例的完整艾玛覆盖率报告?

    在 Java 中可以通过枚举来保证对象的唯一实例 如下所示 public enum EmmaTest public static int someStaticMethod return 33 如何对此类对象实现 100 Emma 测试覆盖率
  • 如何使 TimeField 时区感知?

    有时您需要收集用户的时间而不收集关联的日期 例如 如果用户正在配置每天同一时间运行的重复事件 姜戈的TimeField但不玩时区 但是 在这种特殊情况下 并且可能在您单独记录时间的任何时候 时区是一个重要因素 那么 如何存储时区感知时间 答
  • 具有两个类的 Seaborn 对角非对角 KDE

    我正在尝试查看两类不同变量的 Seaborn 对图 并且我希望看到非对角线上的 KDE 而不是散点图 该文档有有关如何执行 KDE 的说明all数据的 http seaborn pydata org generated seaborn Pa
  • 禁止 Outlook 字段打印

    我们为 Outlook 编写了一个插件 可将电子邮件归档到我们的 CRM 系统中 在此过程中 它将 Outlook 消息 ID 保存为消息本身的用户字段 eg currentUserProperty Constants APPLICATIO
  • 从 UITableView 播放视频

    我的主要目标是能够单击表视图项目并加载视频 表视图填充了文档目录的内容 我已经能够成功执行此操作并将文件名添加到单元格的标签中 我已使用以下代码完成此操作 void viewDidLoad super viewDidLoad NSArray
  • “版本”是 TRANSACT-SQL 中的保留字吗? (显示蓝色但不在保留字列表中)

    我正在写一个Stored Procedure今天写下了这行 SELECT pv1 Version FROM depl 和这个词Version变成蓝色如下图 所以我认为这是一个保留字 所以在这里进行了一些调查 保留关键字 TRANSACT S
  • 事件以另一种形式发生后更新一种形式

    我正在努力确定根据另一个表单中发生的事件更新一个表单的最佳方法 例如 我的应用程序有一个表单 显示零件列表 即库存 非库存等 ListView 我的应用程序还有一个表单 允许用户添加新部件 该应用程序不是MDI 每次从其他表单插入 更新或删