2
我搜索过一段时间,但我觉得每个人也有类似的问题是使用数据库或需要其他特殊情况。如果我只是误解,然后我为重复的问题表示歉意。DataGrid.ItemsSource返回旧的数据,当我需要编辑的版本
我有一个DataGrid.ItemsSource,我设置等于列表<(Entry)> - ()其中入口是三个字符串的结构。
一切完美的作品,并在DataGrid正确显示的一切。不过,我打算允许用户编辑数据在每个单元随心所欲,按“保存”按钮,保存数据返回到一个列表<(输入)>。不幸的是,旧的ItemsSource似乎仍然存在。
所以...我如何获得新的数据?这是我的代码。 EntryGrid是我的DataGrid。
public struct Entry
{
public string Username { get; set; }
public string Password { get; set; }
public string Description { get; set; }
}
private void createTable()
{
List<Entry> data = new List<Entry>();
data.Add(new Entry() { Description = "StackOverflow", Username = "TieRein", Password = "LetMeIn" });
data.Add(new Entry() { Description = "AnotherStackOverflow", Username = "NewTieRein", Password = "DontLetMeIn" });
EntryGrid.ItemsSource = data;
}
private void SaveFile(bool confirmation)
{
EntryGrid.Items.Refresh();
List<Entry> Save = new List<Entry>();
Save = (List<Entry>)EntryGrid.ItemsSource;
string filename = "../../../" + m_profile;
using (var file = File.OpenWrite(filename))
{
var writer = new BinaryFormatter();
writer.Serialize(file, Save);
}
if (confirmation)
MessageBox.Show("Account Saved");
}
我没想到一类将使所有的差异。这正是我所需要的,这是一个简单的解决方案!看来我需要重新评估我的C#语言的理解。谢谢! –