静态变量的问题

作者:互联网   出处:控件中国网   2014-11-05 19:21:28   阅读:1

静态变量的问题

在主窗体中多次调用数据显示窗体时会提示: 此数据表已经存在数据集中.
 
在数据显示窗体类中定义有:
        private static DataTable table = new DataTable("myTable");  // 数据表
        private static DataSet dataset = new DataSet("datasetInfo");  // 数据集
 
   private  void AddData()
{
          ...
       dataset.Tables.Add(table);
 }
 
主窗体中调用:
        private void btnShowList_Click(object sender, EventArgs e)
        {
            FormShowGridView frmShowGridView = new FormShowGridView();
            try
            {
                frmShowGridView.StartPosition = FormStartPosition.CenterScreen;
                frmShowGridView.ShowDialog();
            }
            finally
            {
                frmShowGridView.Dispose();
            }
        }
当多次调用数据显示窗体就会报错, 究其原因就是因为 dataset 和 table 定义为 static 变量, 而这条语句不能多次执行:
dataset.Tables.Add(table);
解决办法: 去掉变量定义前的 static 即可.
        private DataTable table = new DataTable("myTable");  // 数据表
        private DataSet dataset = new DataSet("datasetInfo");  // 数据集
 

Copyright© 2006-2015 ComponentCN.com all rights reserved.重庆磐岩科技有限公司(控件中国网) 版权所有 渝ICP备12000264号 法律顾问:元炳律师事务所
客服软件
live chat