问题是,当它绑定到StringCollection
时,基础类型为string
,因此它将从找到的类型string
中抽出第一个属性来显示。该属性是长度。
你可以做的是将你的StringCollection
包装在你自己制作的类中,并公开一个属性来显示string
的文本。为string
包装类:
public class MyString
{
private string _myString;
public string Text
{
get { return _myString; }
set { _myString = value; }
}
public MyString(string str)
{
_myString = str;
}
}
您的代码就变成了:
StringCollection dict = Settings.Default.MyDict;
// put your string in the wrapper
List<MyString> anotherdict = new List<MyString>();
foreach (string str in dict)
{
anotherdict.Add(new MyString(str));
}
BindingSource bs = new BindingSource();
// bind to the new wrapper class
bs.DataSource = anotherdict;
this.DGV.DataSource = bs;
的 可能的复制http://stackoverflow.com/questions/1104341/net-c-sharp-binding -iliststring-to-a-datagridview – Markissimo 2012-04-13 12:23:27
它不是重复的,它的.net2.0 – Habib 2012-04-13 12:39:16