【问题标题】:passing data from combobox selected values to populate textbox in other forms从组合框选定值传递数据以填充其他形式的文本框
【发布时间】:2014-06-25 15:34:17
【问题描述】:

我有一个程序,它有一个主表单,用户可以从组合框中选择不同的选项,这些选项会逐渐过滤成更具体的选项。一个例子是 第一个组合框有组,用户会选择一个组。此选择激活事件处理程序,然后打开下一个选择,该选择仅列出所选组中的选择。

这会持续大约 10 个组合框。

然后我有表单 2,3,4,5,它们通过停靠表单以可视方式加载到表单 1 中。这些表单有文本框,可以由用户填写,也可以通过计算组合框运行中选择的数据来填写,然后默认信息将填充文本框。

所以问题是我无法从 cmbox 中的用户选择中获取所选项目,然后移动到其他表单,然后加载文本框 我相信我遇到的一个问题是因为表格 1 和表格 2 同时加载,并且我发送的信息是基于表格 1 事件中发生的选择,我需要在其中创建某种形式的更新事件表单 2 在表单 1 上进行选择时刷新表单,但我不知道如何开始。

【问题讨论】:

  • 你尝试了什么方法?
  • 嗯?能给我举个例子吗?两种形式都处于活动状态并已初始化吗?如果您尝试从 form1 访问 form2 的对象,您将收到访问冲突错误(或者您可以 - 在另一个线程 yada yada 上创建对象)...您 可以 在 form1 上创建一个事件,订阅它在 form2 上并让它来回传递对象,然后调用 form2 上的对象
  • 表格 1 左侧有所有组合框,右侧是一个框,其中填充有表格 2、3、4、5,然后有选项卡。因此它们在启动程序时立即以最前面的表格2同时初始化。我一直在尝试不同形式的 get,set 变量,但是当我将它们加载到表单 2 中时,我没有得到任何错误,而是当程序加载左侧的组合框时是空的,而表单 2 应该是空白的白色框表格填写

标签: c# winforms


【解决方案1】:

所以在 form1 中,引发一个事件 (http://msdn.microsoft.com/en-us/library/9aackb16(v=vs.110).aspx),然后在 form2 中填充所需的任何内容(安全 http://msdn.microsoft.com/en-us/library/a1hetckb(v=vs.110).aspx)您可以在引发事件上传递参数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-22
    • 2020-07-13
    相关资源
    最近更新 更多