本文介绍了如何在c#winforms应用程序中设置和获取属性值从一种形式到另一种形式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想将一个字符串值(从数据库中获取值)从一种形式传递到另一种形式.
在目标中设置一个可接受字符串的属性.
然后将其从源实例移交给目标实例.

public class MyForm
   {
   public string ValueFromDataBase { get; set; };
   }

   ...

   MyForm myNewForm = new MyForm();
   myNewForm.ValueFromDataBase = "hello there";
   myNewForm.Show();



是什么给您带来困难?


我将关闭form1,但是当我在另一个myNewForm上访问它时,它会找到null吗?"


是的:它们是单独的实例,就像两个不同的字符串一样:

string first = "First string";
string second = "Second String";

您不希望它们包含相同的文本吗?

MyForm myNewForm = new MyForm();
myNewForm.ValueFromDataBase = "hello there";
myNewForm.Show();
MyForm myNewForm2 = new MyForm();
myNewForm2.ValueFromDataBase = "hello there";
myNewForm2.Show();

同样,您希望表单的两个实例具有单独的ValueFromDataBase值!

如果表单(或任何其他类)的所有实例都必须访问相同的字符串(即它们都将使用相同的数据库,并且您要将连接字符串全部传递给它们),则可以将该属性声明为static:

 公共  class  MyForm
   {
   公共 静态 字符串 ValueFromDataBase {获取; 设置; };
   } 

,然后只对MyForm的所有实例设置一次.不过请小心:只有在所有实例的值都始终相同时才使用它-即便如此,请考虑一下为什么需要它.过度使用static变量是个坏主意-会使事情难以更改.




i want to pass a string value(that getting value from database) from one form to another form..

解决方案




这篇关于如何在c#winforms应用程序中设置和获取属性值从一种形式到另一种形式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

11-03 01:07