Чтобы вывести результат команды на ListBox в C#, вам понадобится следующий код:
1. Включите элемент управления ListBox в форму.
2. Объявите и инициализируйте экземпляр класса, который представляет ваше источник данных или коллекцию, содержащую результат вашей команды. Допустим, что эта коллекция называется "resultList".
3. Установите свойство DataSource элемента ListBox равным вашей коллекции данных:
listBox1.DataSource = resultList;
4. Для отображения определенного свойства объектов вашей коллекции в ListBox, установите свойство DisplayMember равным имени свойства, которое вы хотите отобразить:
listBox1.DisplayMember = "PropertyName";
Если ваша коллекция содержит объекты с несколькими свойствами, и вы хотите отобразить все свойства, вы можете использовать форматирование строки с помощью свойства Format:
listBox1.DisplayMember = "Property1, Property2, Property3"; listBox1.Format += (s, e) => { var item = (YourObjectType)e.ListItem; e.Value = string.Format("{0} - {1} - {2}", item.Property1, item.Property2, item.Property3); };
5. Если вы хотите связать ListBox с коллекцией данных динамически, например, чтобы обновлять ListBox автоматически при изменении коллекции, вы можете использовать привязку данных:
listBox1.DataBindings.Add(new Binding("DataSource", MyClassInstance, "CollectionProperty", false, DataSourceUpdateMode.OnPropertyChanged));
Где MyClassInstance - экземпляр вашего класса, CollectionProperty - свойство класса, содержащее коллекцию данных.
6. Дополнительно вы можете применить стилизацию к элементам ListBox, чтобы они выглядели по-разному или добавить обработчики событий, чтобы реагировать на действия пользователя (например, щелчок по элементу ListBox).
Вот пример кода, который демонстрирует все вышеуказанные шаги:
public partial class Form1 : Form { private List<string> resultList; public Form1() { InitializeComponent(); resultList = GetCommandResult(); // Получение результата команды listBox1.DataSource = resultList; listBox1.DisplayMember = "PropertyName"; // Пример стилизации элементов ListBox listBox1.DrawMode = DrawMode.OwnerDrawFixed; listBox1.DrawItem += ListBox1_DrawItem; } private void ListBox1_DrawItem(object sender, DrawItemEventArgs e) { e.DrawBackground(); var item = listBox1.Items[e.Index].ToString(); var font = new Font(FontFamily.GenericSansSerif, 12); var brush = Brushes.Black; if (item.Contains("Important")) { brush = Brushes.Red; } e.Graphics.DrawString(item, font, brush, e.Bounds); e.DrawFocusRectangle(); } private List<string> GetCommandResult() { // Здесь возвращаете результат вашей команды, например, из базы данных, файла или любого другого источника return new List<string> { "Item 1", "Item 2", "Important Item 3" }; } }
Данный код позволит вам вывести результат команды на ListBox, а также позволит настроить стилизацию элементов ListBox и реагировать на действия пользователя.