.net - 在 windows.forms 之间传递信息的最佳实践

标签 .net winforms

您如何在表单之间传递信息?使用属性或者可能是 New() 或 DoStuff() 方法中的参数,转发是直截了当的(抱歉),但是发送一些东西呢返回 当用户完成第二种形式时? (IE.所选项目的ID)我们已经使用了所有这些:

  • 将调用表单作为引用 传递给被调用表单因此被调用表单可以访问调用表单上的属性或方法。我真的不喜欢这样,因为这两种形式非常相互依赖。将调用表单作为对象传递只会稍微改善这一点。
  • 使用事件 这在某种程度上解耦了代码,但签名必须在事件处理程序上匹配。
  • 使用公共(public)接口(interface) 我说的是内置的.NET,但我想您可以创建自己的。这对我来说似乎是最好的。

  • 现在提高标准,如果表单位于两个不同的 DLL 中怎么办?只要形式不相互依赖,我认为这不会是一大步。

    最佳答案

    为表单创建公共(public)属性,然后等待表单关闭并检查属性,然后再处理新表单。

    NewForm myForm = new NewForm();
    myForm.ShowDialog();
    string x = myform.MyProperty;
    

    关于.net - 在 windows.forms 之间传递信息的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/184034/

    相关文章:

    c# - 将 System.Windows.Forms.Shortcut 转换为 KeyData/KeyCode

    c# - 存储 .NET 应用程序的用户设置的最佳方式是什么?

    c# - 上传文件 winForms C#

    c# - 单一解决方案中的多种应用

    c# - 关于C#中引用变量和变量传递的简单问题

    c# - 在 BackGroundWorker 中运行方法并显示 ProgressBar

    c# - 将 Excel 列格式化为文本

    c# - 堆栈面板的水平滚动不起作用

    javascript - 复选框的选中属性未按预期工作

    c# - 如何获取 Windows 应用商店应用程序的本地化显示名称