隐藏的 DataGridView 列在再次可见时不显示数据
Hidden DataGridView column doesn't display data when made visible again
我有一个绑定到 XML 文件的 DataGridView,XML 文件可能包含某个字段,但也可能不包含。如果有该字段,我想显示相关的 DataGridView 列,如果没有,我想隐藏它。
我通过设置列的可见属性实现了这一点。我遇到的问题是,如果我加载一个没有该字段的 XML 文件(因此该列不可见),然后加载一个带有该字段的 XML 文件,该列再次可见但数据此列没有出现。
我正在使用以下代码加载 XML 文件。
xmlDataGridView.AutoGenerateColumns = false;
xmlDataSet.ReadXml(_tempAccessXMLFile);
xmlDataGridView.DataSource = xmlDataSet;
xmlDataGridView.DataMember = "key";
xmlDataGridView.Refresh();
如有任何帮助,我们将不胜感激。我确定我遗漏了一些明显的东西。谢谢,
(此外,如果格式不正确或不清楚,我深表歉意,我不太擅长措辞)
如果列名加载到网格中但未显示数据,请尝试使用 BindingSource
。我已经使用 books.xml
示例 XML 文件对其进行了测试并且工作正常
xmlDataGridView.AutoGenerateColumns = false;
XmlReader xmlFile = XmlReader.Create(_tempAccessXMLFile, new XmlReaderSettings());
dataSet.ReadXml(xmlFile);
BindingSource bs = new BindingSource();
bs.DataSource = dataSet.Tables["book"];
xmlDataGridView.DataSource =bs;
xmlDataGridView.Refresh();
我设法找到了某种解决方案。我不认为这个问题与隐藏列有任何关系,而只是因为第一次绑定数据时列没有数据。我刚刚将隐藏字段的虚拟记录添加到没有它们的文件中。这对我有用,数据按我的需要出现。
谢谢
我有一个绑定到 XML 文件的 DataGridView,XML 文件可能包含某个字段,但也可能不包含。如果有该字段,我想显示相关的 DataGridView 列,如果没有,我想隐藏它。
我通过设置列的可见属性实现了这一点。我遇到的问题是,如果我加载一个没有该字段的 XML 文件(因此该列不可见),然后加载一个带有该字段的 XML 文件,该列再次可见但数据此列没有出现。
我正在使用以下代码加载 XML 文件。
xmlDataGridView.AutoGenerateColumns = false;
xmlDataSet.ReadXml(_tempAccessXMLFile);
xmlDataGridView.DataSource = xmlDataSet;
xmlDataGridView.DataMember = "key";
xmlDataGridView.Refresh();
如有任何帮助,我们将不胜感激。我确定我遗漏了一些明显的东西。谢谢, (此外,如果格式不正确或不清楚,我深表歉意,我不太擅长措辞)
如果列名加载到网格中但未显示数据,请尝试使用 BindingSource
。我已经使用 books.xml
示例 XML 文件对其进行了测试并且工作正常
xmlDataGridView.AutoGenerateColumns = false;
XmlReader xmlFile = XmlReader.Create(_tempAccessXMLFile, new XmlReaderSettings());
dataSet.ReadXml(xmlFile);
BindingSource bs = new BindingSource();
bs.DataSource = dataSet.Tables["book"];
xmlDataGridView.DataSource =bs;
xmlDataGridView.Refresh();
我设法找到了某种解决方案。我不认为这个问题与隐藏列有任何关系,而只是因为第一次绑定数据时列没有数据。我刚刚将隐藏字段的虚拟记录添加到没有它们的文件中。这对我有用,数据按我的需要出现。 谢谢