Это потому, что DataGridViews показать свойство объекта. В этом случае List имеет только одно свойство «Длина», поэтому он может отображать только «Lenght» (независимо от типа DataType). Вам нужно создать класс-оболочку для достижения желаемого (класс «MyString» с свойством «Текст», а затем отобразить список в вашей сетке).
Надеется, что это помогает
Добавление кода Примера
class MyString
{
private string _text;
public string Text
{ get
{
return _text;
}
set
{
_text = value;
}
}
}
«В исполняющей форме
private List<MyString> foo()
{
List<MyString> lst = new List<MyString>();
MyString one = new MyString();
MyString two = new MyString();
one.Text = "Hello";
two.Text = "Goodbye";
lst.Add(one);
lst.Add(two);
return lst;
}
private void Form1_Load(object sender, EventArgs e)
{
dataGridView1.DataSource = foo();
}
Содержит ли ваш IList только строки? или он содержит какой-то другой тип, ''? –
Nate
Ух ... он сказал, что это IList ... –
Clyde