Win Form Combo Box Items.addrange 메소드 사용
문제
AddRange 메소드를 사용하여 콤보 박스 컨트롤의 항목 모음에 추가하려는 객체 배열이 있습니다. 이 방법은 object[]
그러나 내가 그것을 전달할 때 일부 값으로 집중된 배열의 이름을 전달하면 불평합니다.
최고의 과부하 메소드 일치
System.Windows.Forms.ComboBox.ObjectCollection.AddRange(object[])
몇 가지 잘못된 주장이 있습니다.
내 배열의 개체를 정의하는 클래스는 매우 간단합니다.
public class Action
{
public string name;
public int value;
public override string ToString()
{
return name;
}
}
and my array is declared such:
public Action[] actions = new Action[] {
new Action() { name = "foo", value = 1 },
new Action() { name = "bar", value = 2 },
new Action() { name = "foobar", value = 3 }
};
내가 전화하려고하는 곳입니다 AddRange
:
combobox1.Items.AddRange(actions);
그리고 그것이 불평하는 줄입니다.이 작업을 수행 할 수있는 단계가 있습니까? 간단한 것을 추가하면 잘 작동합니다 string[]
해결책
아래와 같이 .NET C# 테스트 프로젝트에서 시도해 보았습니다. 샘플 코드는 다음과 같습니다.
public partial class Form1 : Form
{
public Action[] actions = new Action[]
{
new Action() { name = "foo", value = 1 },
new Action() { name = "bar", value = 2 },
new Action() { name = "foobar", value = 3 }
};
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
comboBox1.Items.AddRange(actions);
}
}
public class Action
{
public string name;
public int value;
public override string ToString()
{
return name;
}
}
따라서 액션 객체를 어디에서 선언했는지 알려야합니다.
제휴하지 않습니다 StackOverflow