2009-08-05 2 views
1

Ich bin relativ neu in der .NET-GUI-Programmierung mit WinForms (das Projekt, an dem ich arbeite, zielt auf .NET 2.0 für die Bereitstellung ab), und ich versuche, eine ListBox in einem Formular an eine string [] -Eigenschaft zu binden dass in der Form definiert:Wie kann ein String-Array mit einer ListBox verbunden werden?

namespace AVPriorityUI 
{ 
    public partial class AVPriorityUI : Form 
    { 
     public AVPriorityUI() 
     { 
      InitializeComponent(); 
     } 

     public string[] ProcessNames 
     { 
      get { ... } 
      set { ... } 
     } 
    } 
} 

Egal, was ich tue, ich nicht Visual Studio 2008 erhalten kann, um die ProcessNames Eigenschaft als gültige Quelle zu bieten bis zu binden. Was muss ich anders machen, damit dies funktioniert?

[EDIT] Ich habe versucht, die GUI zu verwenden, um die Bindung herzustellen.

Antwort

0

Sie sollten in der Lage sein, die DataSource der Listbox auf die ProcessNames-Eigenschaft im Code selbst festzulegen. Wenn Sie versuchen, die Benutzeroberfläche zum Festlegen der DataSources/Bindungen zu verwenden, die möglicherweise der Schuldige sind.

dh:

mylistBox.DataSource = this.ProcessNames; 
+0

Das war es ... Ich habe noch nie eine Benutzeroberfläche zu sehen, die für den komplexen Fall funktioniert, aber nicht ganz auf dem trivialen ...: ( –

0

das funktioniert für mich in einem einfachen Test gerade jetzt:

string[] alist = { "a", "b", "c", "d", "e", "f", "g", "h" }; 
listBox1.DataSource = alist; 
+0

Wie funktioniert das, wenn Alist eine globale Gültigkeitsbereich Variable ist und Sie fügen Sie weitere Elemente nach der Datenbindung? –

Verwandte Themen