C# c datagridview单向绑定
我有一个datagridview DGV1,我想从XML文件中读取并将DGV1绑定到它 但一旦在DGV1中进行了更改,我希望它存储在一个列表中 像文件之类的东西C# c datagridview单向绑定,c#,datagridview,C#,Datagridview,我有一个datagridview DGV1,我想从XML文件中读取并将DGV1绑定到它 但一旦在DGV1中进行了更改,我希望它存储在一个列表中 像文件之类的东西 XML --> DGV1 --> list 下面是我现在尝试的 public DataTable PopulateDGV1() { DataSet dataSet = new DataSet(); dataSet.ReadXml(GlobalParam.SettingsXML
XML --> DGV1 --> list
下面是我现在尝试的
public DataTable PopulateDGV1()
{
DataSet dataSet = new DataSet();
dataSet.ReadXml(GlobalParam.SettingsXMLPath);
return dataSet.Tables[0];
}
private void LoadDGV1_Click(object sender, EventArgs e)
{
DGV1.DataSource = _control.PopulateDGV1();
if (DGV1.Columns[0] != null) DGV1.Columns[0].ReadOnly = true;//make the most left column read only
}
我想从储蓄中得到这样的东西
List<string> data = new List<String>();
foreach (DataGridViewRow item in DGV1.Rows)
{
if (item.Cells[1].Value!=null)
data.Add(item.Cells[1].Value.ToString());
}
我错过了什么 你的代码看起来不错。你能澄清一下你的问题吗?@HerrKater我希望这样做不会提示用户实际保存它,就像BindingList我认为只有一个方向为什么要维护两个collectionsDataTable和List,它们代表相同的东西?我将创建一个表示行的类,并将其用作网格的数据源。如果用户编辑网格,它会自动更新数据源。
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private List<Test> DataSource;
public void PopulateDGV1()
{
DataSource=new List<Test>() { new Test() { Age = 2, Name = "Test" } };
//TODO:read your XML file
DGV1.DataSource = DataSource;
}
private void LoadDGV1_Click(object sender, EventArgs e)
{
PopulateDGV1();
}
}
public class Test
{
public string Name { get; set; }
public int Age { get; set; }
}