.NET / C# 绑定 IList到 DataGridView
我有一个从函数(作为变量 lst)返回的 IList
,我进行了设置,然后我的
this.dataGridView1.DataSource = lst;
数据网格添加了一列标记为 Length 的列,然后列出了每个字符串的长度。 如何让它只列出字符串?
I have an IList<string>
returning from a function (as variable lst) and I set and then I
this.dataGridView1.DataSource = lst;
The datagrid adds one column labelled Length and then lists the length of each string.
How do I make it just list the strings?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您确实需要一个具有字符串属性的对象列表。 使用.NET 3.5,您可以作弊:
否则创建一个虚拟类并手动复制数据...
You really need a list of objects that have a string property. With .NET 3.5 you could cheat:
Otherwise create a dummy class and copy the data in manually...
这是因为 DataGridView 显示对象的属性。 在这种情况下,列表只有一个属性“长度”,因此它只能显示“长度”(无论数据类型如何)。
您需要创建一个包装类来实现您想要的功能(一个具有“Text”属性的“MyString”类,然后在网格中显示一个列表)。
希望这有助于
添加代码示例
在执行表单中
This is because DataGridViews show properties of the object. In this case the List only has one property "Length", therefore it can only display "Lenght" (regardless of DataType).
You need to create a wrapper class to achieve what you want (a "MyString" class with a property of "Text", then have a List displayed in your grid).
Hope this helps
Adding Code Example
'In the executing form