从同一解决方案中的不同项目访问表单的控件

时间:2014-07-02 04:26:50

标签: c# .net winforms

我希望访问控件位于同一解决方案中的不同项目中。我设计的方式是一个解决方案中包含不同的项目。

我尝试过以下代码。

           Form form =  (Form)Application.OpenForms["frm"];
           if (form != null)
           {

             Button cs = (Button)((form.Controls["btn"]);
               cs.Enabled = false;
           }

使用此代码可以找到表单,但无法从中访问控件。" cs"返回null值并抛出" null引用异常错误"。可能是什么错误,我应该如何修改代码。这是一个使用c#visual studio 2010的Windows应用程序。 任何建议都会有很大帮助。 感谢

1 个答案:

答案 0 :(得分:0)

首先忽略你为什么要这样做,我建议:

  1. 添加第一个项目作为对第二个
  2. 的引用
  3. 将公共属性添加到您需要从
  4. 访问控件的表单中
  5. 获取您目前的表单
  6. 将表单转换为适当的/实际类型
  7. 使用公共财产。