1
索引I顯示字符串數組爲列表框在屬性網格與型變換器與代碼如下。
如何選擇listbox的索引來初始化第一次加載的程序?我想SelectedIndex = 0,顯示第一個arrData =「一個」。任何想法?如何選擇列表框
public partial class Form1 : Form
{
string[] arrData = new string[] { "one", "two", "three" };
PropertyGrid pGrid = new PropertyGrid();
public Form1()
{
InitializeComponent();
FirstClass fClass = new FirstClass(arrData);
pGrid.SelectedObject = fClass;
pGrid.Dock = DockStyle.Fill;
this.Controls.Add(pGrid);
}
public class FirstClass
{
public FirstClass(string[] arrData)
{
this.DataSource = arrData;
}
[Browsable(true)]
[DefaultValue("one")]
[TypeConverter(typeof(SecondClass))]
public string Counter { get; set; }
[Browsable(false)]
public string[] DataSource { get; set; }
}
public class SecondClass : StringConverter
{
public override bool GetStandardValuesSupported(ITypeDescriptorContext context)
{
return true;
}
public override StandardValuesCollection GetStandardValues(ITypeDescriptorContext context)
{
FirstClass fClass = (FirstClass)context.Instance;
if (fClass == null || fClass.DataSource == null)
{
return new StandardValuesCollection(new string[0]);
}
else
{
return new StandardValuesCollection(fClass.DataSource);
}
}
}
}
你是對** ListBox.SelectedIndex = 0; **對於設置如果使用的話列表框控件,但問題是計數器屬性時使用的字符串類型,而不是列表框列表框的索引。 –