我在Windows窗体应用中遇到了一些DataGridView问题。我预设了列,每隔一段时间我就需要更新行中的数据。我没有尝试手动更新每一行,而是想清除所有现有行并使用新数据添加新行。我的代码如下:
private void RefreshPlayerStatus()
{
gridPlayers.Rows.Clear();
List<object[]> playerInfo = game.GetPlayerInfo();
foreach (object[] info in playerInfo)
gridPlayers.Rows.Add(info);
gridPlayers.Refresh();
}
出于某种原因,网格已清除但新行未显示。我已经查看了其他答案,重置了dataBindings和source,但这并没有帮助,猜测因为我从不使用数据源。如果有人有任何建议,将不胜感激。
编辑:
使dataGridView绑定到新的PlayerInfo
类,该类具有我视图的所有属性。当运行下面的修改方法时,网格仍会清空但不显示新信息。
private void RefreshPlayerStatus()
{
List<PlayerInfo> playerInfo = mafiaGame.GetPlayerInfo();
gridPlayers.DataSource = playerInfo;
gridPlayers.Refresh();
}