using System; using System.Collections.Generic; using System.Windows.Forms; namespace KryukovLib { public partial class CustomListBox : UserControl { private ListBox listBox; public CustomListBox() { InitializeComponent(); InitializeListBox(); } private void InitializeListBox() { listBox = new ListBox { Dock = DockStyle.Fill, SelectionMode = SelectionMode.One }; this.Controls.Add(listBox); } // Публичное свойство для получения и установки выбранного значения public string SelectedValue { get => listBox.SelectedItem?.ToString() ?? string.Empty; set { if (listBox.Items.Contains(value)) listBox.SelectedItem = value; } } // Публичное свойство для прямого доступа к элементам Items public ListBox.ObjectCollection ItemCollection { get => listBox.Items; } // Публичный метод для очистки списка public void ClearList() { listBox.Items.Clear(); } } }