我的数据网格有问题我使用此代码将选定的行从datagrid1复制到datagrid2 ..我的数据网格连接到数据库中的表..
<input type="text" data-minchars="4" autocomplete="off" aria-autocomplete="list" id="speciesList" class="input-loader" style="width: 600px;">
它正常工作并将所选值添加到datagrid2 ..但问题是当我关闭窗体并再次运行它时... datagrid2清除其所有值..
有什么方法可以保持datagrid2中的值,只有当我按下按钮时才清除它? thankss
答案 0 :(得分:0)
保留值的方法有很多种,其中一种方法如下:
当你需要你的表格从屏幕上消失时,你不要关闭它但只隐藏例如那样(假设它不是你的应用程序的主要形式):
// Using FormClosing event
private void Form2_FormClosing(object sender, FormClosingEventArgs e)
{
// as example, exitingApp (bool) should be your global flag to distinguish
// if you want to hide this form only or you close your application completely
if (!exitingApp)
{
e.Cancel = true;
Hide();
}
}
考虑到您应该保留对此表单的引用,以便能够再次显示:
if (form2 == null)
{
form2 = new Form2();
}
form2.Show();
另一种方法是在关闭表单之前将表单内容存储在其他位置,并在表单再次加载时恢复,但我个人更喜欢第一种方式。
答案 1 :(得分:0)
您可以创建一个具有静态列表的静态类,并将gridview的数据存储在其中。并在page_load上加载列表数据的gridview。
如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using System.Web.UI.WebControls;
/// <summary>
/// Summary description for Global
/// </summary>
public static class Global
{
public static List<GridView> GridViewList = new List<GridView>();
}