我有一个有限的DataGridView
我用视觉工作室设计师设计了它。所有信息都相应显示。
在我的DataGridView
我有2 ComboBoxes
这里的数据也正确显示。如果我点击ComboBoxe
选项列表,我想要那样。
由于DataGridView
与源有关,因此我无法使用ComboBox.Items.Add()
方法。所以我在设计器中创建了另一个Datasource,在运行时我更改了该特定组合框的datasource
。 现在列表显示了我想要的选项,是的!
现在,我想将这个新添加或更改的行保存到数据库..所以我使用以下方法(我在RowLeave
上调用DataGridView
事件的方法):
if (tasksDataSet.HasChanges()
{
try
{
tasksBindingSource.EndEdit();
tasksDataSet.GetChanges();
tasksTableAdapter.Update(tasksDataSet);
}
catch (Exception ex)
{
}
}
这不适用于ComboBoxes
,因为这是另一个数据源。
基本上我想要的是:
DataGridView
DataGridViewComboBox
DataGridView
到数据库我怎样才能做到这一点?
答案 0 :(得分:1)
如果您的问题是保存给网格视图的当前数据。 比我建议尝试使用会话。将数据绑定到DataSource时将其分配给 session [“SomeID”]。如果您更改绑定,则再次为其分配相同的会话。
下一步将会话转换为您想要保存的内容。
例如:
//Datasource.
list<User> DataBoundSource = new list<User>();
DataGrid.DataSource = DataBoundSource;
DataGrid.DatBind();
//Assign to Session where you are binding this
//every time
Session["SameID"] = lsDataBoundSOurce;
//your code.
...
...
...
//covert that session to Datasource you want to save.
list<User> saveData = (list<User>) Session["SameID"];
这是我得到的基本想法。我跳这会帮助你。 请给它+1,如果它可以帮助你