пользовательский элемент управления на flowlayoutpanel - выбранный элемент

У меня есть настраиваемый элемент управления, который я загружаю в элемент управления flowlayoutpanel, и он отображается нормально, но у меня возникли небольшие проблемы с определением, где обрабатывать «выбранный» аспект вещей. это своего рода проблема из двух частей.

Во-первых, мне нужно, чтобы элемент управления действовал как один объект (это элемент управления отображением, без кнопок и т. д.), поэтому теперь, если вы нажмете на метку в элементе управления, он не вызовет элементы управления onclick.

другая часть - как мне получить выбранный элемент?

Прямо сейчас у меня есть список ‹> объектов моего настраиваемого класса (данные), и конструктор настраиваемого элемента управления может взять один из этих элементов, я думаю, зациклить этот список и создать панель flowlayoutpanel

Foreach(CItem item in MyItems)
{
flowlayout1.controls.add(new MyControl(item))}

в событиях Enter / Leave элемента управления я меняю цвет фона, и мне нужно обновить выбранное место, но я не уверен, где лучше

Я также попытался подключить одно и то же событие для всех элементов управления в настраиваемом элементе управления.

    public MyControl(CItem mv)
    {
        InitializeComponent();
        foreach (Control ctrl in this.Controls)
        {
            ctrl.Enter +=new EventHandler(MyControl_Enter);
            ctrl.Leave +=new EventHandler(MyControl_Leave);
        }

    ........

person jrich523    schedule 23.12.2011    source источник


Ответы (1)


Я создал Bindable FlowLayoutPanel, который включал настройку выбранного индекса (с выделением в зависимости от выбранного элемента управления. Я разместил его на code review. Оцените его и дайте мне знать, работает ли он для вас.

person SwDevMan81    schedule 09.02.2012