C#窗体间的数据传值(使用静态类) 收藏 之前使用带参数的构造函数、属性以及方法实现了数据的交互,接下来的是使用静态类来完成窗体间的数据交互。这也是经常要用到的一种数据交互方法。 下面是定义的一个类: using System; using System.Collections; namespace ZZ { public class AppDatas { //静态数据成员 private static ArrayList listData; //静态构造函数 static AppDatas() { listData = new ArrayList(); listData.Add("DotNet"); listData.Add("C#"); listData.Add("Asp.net"); listData.Add("WebService"); listData.Add("XML"); } //静态属性 public static ArrayList ListData { get{return listData;} } //静态方法 public static ArrayList GetListData() { return listData; } } } 上面包含了一个静态类成员,listData,一个静态构造函数static AppDatas(),用来初始化 listData 的数据。还有一个静态属性 ListData 和一个静态GetListData()方法,他们实现了同样的功能就是返回 listData。 下面是完整的代码: Form1.cs 文件 using System; using System.Drawing; using System.Collections; using System.ComponentModel; using System.Windows.Forms; namespace ZZ { public class Form1 : System.Windows.Forms.Form { private System.Windows.Forms.Button buttonEdit; private System.Windows.Forms.ListBox listBoxFrm1; private System.ComponentModel.Container components = null; public Form1() { InitializeComponent(); this.listBoxFrm1.DataSource = AppDatas.ListData; } protected override void Dispose( bool disposing ) { if( disposing ) { if(components != null) { components.Dispose(); } } base.Dispose( disposing ); } [STAThread] static void Main() { Application.Run(new Form1()); } #region Windows 窗体设计器生成的代码 private void InitializeComponent() { this.buttonEdit = new System.Windows.Forms.Button(); this.listBoxFrm1 = new System.Windows.Forms.ListBox(); this.SuspendLayout(); // // buttonEdit // this.buttonEdit.Location = new System.Drawing.Point(128, 108); this.buttonEdit.Name = "butt...