C# 用一个List把数据装起来,绑定到DEV控件的GridControl上,当直接通过单元格编辑数据,回传到List,再按下保存按钮会 getlist出来到新的GridControl上
时间: 2024-02-11 19:06:22 浏览: 141
好的,你的问题是如何实现将一个装有数据的List绑定到DEV控件的GridControl上,并且如何将通过单元格编辑的数据回传到List中,以及如何通过保存按钮将List中的数据显示到另一个GridControl上。我可以给你提供一些思路和代码示例,帮助你实现这个功能。
首先,将List绑定到GridControl上可以通过以下代码实现:
```csharp
List<MyData> dataList = GetData(); // 获取装有数据的List
gridControl1.DataSource = dataList; // 将List绑定到GridControl上
```
其中,MyData是你的数据类型,GetData()是获取数据的自定义方法。
然后,如何将通过单元格编辑的数据回传到List中呢?可以通过GridControl的CellValueChanged事件来实现,代码示例如下:
```csharp
private void gridView1_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
{
MyData data = gridView1.GetRow(e.RowHandle) as MyData; // 获取当前行的数据对象
if (data != null)
{
// 根据列名将单元格的值赋给数据对象的属性
if (e.Column.FieldName == "Name")
{
data.Name = e.Value.ToString();
}
else if (e.Column.FieldName == "Age")
{
data.Age = Convert.ToInt32(e.Value);
}
// ...
}
}
```
最后,如何将List中的数据显示到另一个GridControl上呢?可以在保存按钮的Click事件中调用getlist方法获取List,然后将List绑定到另一个GridControl上,代码示例如下:
```csharp
private void btnSave_Click(object sender, EventArgs e)
{
List<MyData> dataList = gridControl1.DataSource as List<MyData>; // 获取绑定到GridControl的List
if (dataList != null)
{
gridControl2.DataSource = dataList; // 将List绑定到另一个GridControl上
}
}
```
以上是一个实现思路和代码示例,具体实现还需要根据你的具体需求进行调整。希望可以帮助到你!
阅读全文