/****************************** * 说明:流转步骤控件 * 创建人:龚宇超 * 创建日期:2019-06-21 * 修改人: * 修改日期: * 修改备注: * 版本:1.0.0.0 ******************************/ using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Linq; using System.Text; using System.Windows.Forms; using Lskj.Business.Impl; using Lskj.Control; namespace Lskj.Workflow.Control { public partial class StepItem3 : UserControl { /// /// 默认选中 /// private static StepItem3 mDdefaultItem; /// /// 标题对象 /// /// The title label object. public Label TitleLabelObj { get { return btn_item_title; } } /// /// 删除对象 /// /// The delete pabel object. public Panel DeletePabelObj { get { return PlDel; } } private ButtonHoverEventHandler hoverEvent; public delegate void ButtonHoverEventHandler(StepItem3 before, StepItem3 after); public StepItem3() { InitializeComponent(); } /// /// 说明:设置默认选中的Button /// 创建人:龚宇超 /// 创建日期:2017-08-16 /// 修改人: /// 修改日期: /// 修改备注: /// 版本:1.0 /// /// The item. public void SetDefaultSelectItem(StepItem3 item) { mDdefaultItem = item; mDdefaultItem.SetItemState(MenuButtonState.selectState); } /// /// 说明:设置菜单状态状态 /// 创建人:龚宇超 /// 创建日期:2017-08-16 /// 修改人: /// 修改日期: /// 修改备注: /// 版本:1.0 /// /// The state. public void SetItemState(MenuButtonState state) { switch (state) { case MenuButtonState.defaultState: this.BackColor = Color.White; btn_item_title.ForeColor = Color.Black; break; case MenuButtonState.selectState: this.BackColor = ColorTranslator.FromHtml("#3E92F8"); btn_item_title.ForeColor = Color.White; break; } } /// /// 说明:注册鼠标划过事件 /// 创建人:龚宇超 /// 创建日期:2017-08-16 /// 修改人: /// 修改日期: /// 修改备注: /// 版本:1.0 /// /// The hover event. /// Type of the event. public void SetHoverEvent(ButtonHoverEventHandler hoverEvent) { this.hoverEvent = hoverEvent; this.MouseClick += new MouseEventHandler(this.OnStepItemClick); } /// /// 说明: /// 创建人:龚宇超 /// 创建日期:2019-06-21 /// 修改人: /// 修改日期: /// 修改备注: /// 版本:1.0 /// /// The source of the event. /// The instance containing the event data. void OnStepItemClick(object sender, EventArgs e) { try { StepItem3 item = null; if (sender is StepItem3) item = sender as StepItem3; if (sender is Label) item = (sender as Label).Parent as StepItem3; if (item != null) { if (mDdefaultItem != null) { mDdefaultItem.SetItemState(MenuButtonState.defaultState); } item.SetItemState(MenuButtonState.selectState); } if (mDdefaultItem != item) { if (hoverEvent != null) { this.hoverEvent(mDdefaultItem, item); } mDdefaultItem = item; } } catch (Exception ex) { string Message = ErrorMessage.PromptErrorMessage(ex); MessageUtil.Show(Message,ex.Message); } } /// /// 菜单状态 /// public enum MenuButtonState { defaultState, selectState } } }