我正在尝试制作一个“历史页面”。读取用户作为字符串的 url 并将它们添加到 List 并将其转换为 DataTable 但是当我单击显示历史菜单选项时,我得到的只是列“urls”和它下面的一个空单元格。我假设我也可能不恰当地使用了 Add 方法。
主窗体类:
private void showHistoryToolStripMenuItem_Click(object sender, EventArgs e)
{
using (History history = new History())
{
history.ShowDialog();
nonHomepage = URLInput.Text;
if (String.IsNullOrEmpty(nonHomepage))
{
return;
}
else
{
addToList(nonHomepage);
}
}
}
public void addToList(string URLvalue)
{
listH.Add(URLvalue);
}
public List<string> getList()
{
return listH;
}
历史表格类:
private void History_Load(object sender, EventArgs e)
{
Form1 br = new Form1();
list = br.listH;
DataTable table = ConvertListToDataTable(list);
dataGridView1.DataSource = table;
}
static DataTable ConvertListToDataTable(List<string> l)
{
DataTable table = new DataTable();
//int columns = 0;
table.Columns.Add("urls");
foreach(string s in l)
{
table.Rows.Add(s);
}
return table;
}
有什么建议么?如果我将所有这些 url 放入文件中,然后从文件中读取并写入文本框/表格会怎样?或者也许我应该改变数据结构?例如,去查字典?提前致谢。