Frage

Ich habe ein Array von Objekten, die ich versuche, auf die Items-Auflistung eines Kombinationsfeld-Steuerelement mit der AddRange Methode hinzuzufügen. Das Verfahren nimmt eine object[] aber wenn ich es den Namen des Array übergeben, die mit einigen Werten intialized wurde, es klagt:

  

Die beste überladene Methode Spiel für System.Windows.Forms.ComboBox.ObjectCollection.AddRange(object[]) hat einige ungültige Argumente.

Die Klasse, die Objekte in meinem Array definiert, ist sehr einfach:

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 }
};

das ist, wo ich versuche AddRange zu nennen:

combobox1.Items.AddRange(actions);

und das ist die Linie, die sie über beschwert - gibt es einige Schritt, den ich diese Lage sein, bin abhanden zu tun? es funktioniert gut, wenn ich ein einfaches string[] bin nur das Hinzufügen

War es hilfreich?

Lösung

ich versuchte es, wie unten in einem .NET C # Testprojekt aus und es funktioniert gut.  Der Beispielcode ist wie folgt:

 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;
        }
    }

Sie müssen also uns sagen, wo haben Sie erklärt die Aktionen widersprechen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top