/// <summary> /// Меняем текст и цвет элемента в соответствиис с данными /// </summary> private void SetIdeaItemListTextFields(IdeaListItem item, Idea idea) { item.TitleProp = idea.Title; item.MarkProp = idea.Mark.ToString(); item.SectionColorProp = Constants.SectionsColors[idea.Section]; SelectedListItem.Idea = idea; }
/// <summary> /// Поменять цвет для выбранного элемента /// </summary> private void ChangeColorSelectedIdeaItem(IdeaListItem ideaListItem) { if (this.SelectedListItem != null) { this.SelectedListItem.BackColorProp = Color.Transparent; } this.SelectedListItem = ideaListItem; this.SelectedListItem.BackColor = Color.FromArgb(218, 218, 218); }
/// <summary> /// Обработчик нажатия н кнопку удаления идеи /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnDeleteIdea_Click(object sender, EventArgs e) { if (SelectedListItem == null) { return; } this.Document.DeleteIdea(SelectedListItem?.Idea); this.flowLayoutPanelIdeas.Controls.Remove(SelectedListItem); SelectedListItem = null; ClearTextFieldsInShowIdeaPanel(); }
/// <summary> /// Добавить в список IdeaListItem (пользовательский элемент идеи) /// </summary> /// <param name="idea"></param> private void AddIdeaListItem(Idea idea) { IdeaListItem IdeaListItem = new IdeaListItem(idea); //Устанавливаем обработчик нажатия на все дочерние элементы для корректного визуального выделения объекта идей HelperControls.SetOnClickHandlerForAllElementsInControl(IdeaListItem, SelectIdeaItem); IdeaListItem.TitleProp = idea.Title; IdeaListItem.MarkProp = idea.Mark.ToString(); IdeaListItem.SectionColorProp = Constants.SectionsColors[idea.Section]; IdeaListItem.Width = flowLayoutPanelIdeas.Width - 25; flowLayoutPanelIdeas.Controls.Add(IdeaListItem); flowLayoutPanelIdeas.Controls.SetChildIndex(IdeaListItem, 0); }
private void SelectIdeaItem(object sender, EventArgs e) { Control c = sender as Control; //Получим элемент UserControl IdeaListItem IdeaListItem ideaItem = HelperControls.GetParenByType <IdeaListItem>(c); if (ideaItem == null) { return; } //Поменяем цвет для выделенной идеи ChangeColorSelectedIdeaItem(ideaItem); ShowDataForIdea(ideaItem.Idea); }