【发布时间】:2010-07-01 17:05:57
【问题描述】:
在 Windows 窗体应用程序中,我试图创建一个包含两列的 DataGridView:一列用于 XML 元素给出的键,另一列用于所述 XML 元素的值。到目前为止,这是我的代码:
this.myData = new DataGridView();
((System.ComponentModel.ISupportInitialize)(myData)).BeginInit();
myData.Location = new System.Drawing.Point(12, 42);
myData.Name = "myData";
myData.Size = new System.Drawing.Size(1060, 585);
myData.TabIndex = 32;
foreach (XElement xElem in xInfoItems)
{
numItems++;
}
myData.Columns.Add(new DataGridViewTextBoxColumn());
myData.Columns.Add(new DataGridViewTextBoxColumn());
myData.Columns[0].Name = "Key";
myData.Columns[0].DataPropertyName = "key";
myData.Columns[1].Name = "Value";
myData.Columns[1].DataPropertyName = "value";
List<myRow> data = new List<myRow>();
foreach (XElement xElem in xInfoItems)
{
data.Add(new myRow(xElem.Attribute("key").Value, xElem.Value));
}
myData.DataSource = data;
myData.Refresh();
this.PerformLayout();
我已经确认data 中的所有信息都是通过 foreach 加载的,因此该部分可以正常工作。我的问题是网格显示,但网格上没有显示任何内容。我究竟做错了什么?我对这种数据类型不是很好,所以如果它很明显,我很抱歉。
更新
我发现我没有在设计视图中正确设置 myData。添加 myRow 类后,它运行良好。感谢您的帮助!
【问题讨论】:
标签: c# xml winforms datagridview linq-to-xml