Files
lserp_cs_6.0/插件库/Lskj.Workflow/Control/StepItem3.cs
T
cyf ab56a9bcf7 基线 SVN r240
SVN-Revision: r240
2025-02-06 06:46:06 +00:00

160 lines
5.2 KiB
C#

/******************************
* 说明:流转步骤控件
* 创建人:龚宇超
* 创建日期: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
{
/// <summary>
/// 默认选中
/// </summary>
private static StepItem3 mDdefaultItem;
/// <summary>
/// 标题对象
/// </summary>
/// <value>The title label object.</value>
public Label TitleLabelObj { get { return btn_item_title; } }
/// <summary>
/// 删除对象
/// </summary>
/// <value>The delete pabel object.</value>
public Panel DeletePabelObj { get { return PlDel; } }
private ButtonHoverEventHandler hoverEvent;
public delegate void ButtonHoverEventHandler(StepItem3 before, StepItem3 after);
public StepItem3()
{
InitializeComponent();
}
/// <summary>
/// <para>说明:设置默认选中的Button</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2017-08-16 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="item">The item.</param>
public void SetDefaultSelectItem(StepItem3 item)
{
mDdefaultItem = item;
mDdefaultItem.SetItemState(MenuButtonState.selectState);
}
/// <summary>
/// <para>说明:设置菜单状态状态</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2017-08-16 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="state">The state.</param>
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;
}
}
/// <summary>
/// <para>说明:注册鼠标划过事件</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2017-08-16 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="hoverEvent">The hover event.</param>
/// <param name="eventType">Type of the event.</param>
public void SetHoverEvent(ButtonHoverEventHandler hoverEvent)
{
this.hoverEvent = hoverEvent;
this.MouseClick += new MouseEventHandler(this.OnStepItemClick);
}
/// <summary>
/// <para>说明:</para>
/// <para>创建人:龚宇超</para>
/// <para>创建日期:2019-06-21 </para>
/// <para>修改人:</para>
/// <para>修改日期:</para>
/// <para>修改备注:</para>
/// <para>版本:1.0</para>
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
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);
}
}
/// <summary>
/// 菜单状态
/// </summary>
public enum MenuButtonState
{
defaultState,
selectState
}
}
}