我目前正在Visual Studio中学习c#窗口表单的基础知识,并且想知道如何使用常见的CS文件。我想将变量从一个文件传输到另一个文件,我相信一个简单的方法是使用一个普通的cs文件,该文件仅存储变量,然后从每个表单中引用它。所以我的问题是。如何为该通用CS文件布置代码?如果我以一种形式引用该值,然后以下一种形式引用它,则它将显示以前形式中记录的值或从0重新开始。谢谢您的帮助!
答案 0 :(得分:0)
几件事。我将从这篇文章中删除基本标签,因为这是一门完全不同的语言,可能会引起一些奇怪的答复。
您的问题似乎使CS文件与对象和引用混淆了。因此,首先,.cs文件没有什么神奇的。它只是c#代码所在的文件。通常每个文件都有一个1类的约定,但这只是对开发人员的帮助,而不是要求。您的数据本身将在一个对象实例中,并且该对象实例由一个类定义(恰好在一个cs文件中)。
一个简单的类定义可能看起来像这样
public class Person
{
public int Id
{
get;
set;
}
public string Name
{
get;
set;
}
}
然后您的第一个表单可以创建一个这样的人的实例:
Person bob = new Person();
bob.Id = 1;
bob.Name = "Bob Dylan";
(或者您可能会从控件中分配值)
然后,您需要将您的人员对象实例传递给其他表单。有几种方法可以完成,并且在不了解您的问题域的情况下,我无法判断哪种方法最合适。但是,如果您的第二个表单具有Public Person属性,那么您可以做些简单的事情
Form2 secondForm = new Form2();
secondForm.Person = bob;
secondForm.Show();
或通过构造函数传递(如果是这样定义的话)
Form2 secondform = new Form2(bob);
secondForm.Show();
现在,您的secondForm实例可以通过Person属性或在构造函数中(取决于编写方式)访问上面创建的bob对象。
尽管这也可以使用静态类甚至单例来完成,但我认为,除非您对常规类完全了解,否则使用它们可能会导致您陷入各种“代码异味”。