mirror of
https://github.com/eggplantlwj/VisionEdit.git
synced 2026-03-24 16:56:36 +08:00
1、优化LOG显示与引用
2、添加PMA工具,工具内容待完善 3、修复流程树显示 4、添加开源项目,优化UI空间 5、其他BUG更改
This commit is contained in:
317
UsingControl/HZHControls/Controls/DateTime/UCTimePanel.cs
Normal file
317
UsingControl/HZHControls/Controls/DateTime/UCTimePanel.cs
Normal file
@@ -0,0 +1,317 @@
|
||||
// ***********************************************************************
|
||||
// Assembly : HZH_Controls
|
||||
// Created : 08-08-2019
|
||||
//
|
||||
// ***********************************************************************
|
||||
// <copyright file="UCTimePanel.cs">
|
||||
// Copyright by Huang Zhenghui(黄正辉) All, QQ group:568015492 QQ:623128629 Email:623128629@qq.com
|
||||
// </copyright>
|
||||
//
|
||||
// Blog: https://www.cnblogs.com/bfyx
|
||||
// GitHub:https://github.com/kwwwvagaa/NetWinformControl
|
||||
// gitee:https://gitee.com/kwwwvagaa/net_winform_custom_control.git
|
||||
//
|
||||
// If you use this code, please keep this note.
|
||||
// ***********************************************************************
|
||||
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;
|
||||
|
||||
|
||||
namespace HZH_Controls.Controls
|
||||
{
|
||||
/// <summary>
|
||||
/// Class UCTimePanel.
|
||||
/// Implements the <see cref="System.Windows.Forms.UserControl" />
|
||||
/// </summary>
|
||||
/// <seealso cref="System.Windows.Forms.UserControl" />
|
||||
[ToolboxItem(false)]
|
||||
public partial class UCTimePanel : UserControl
|
||||
{
|
||||
/// <summary>
|
||||
/// Occurs when [select source event].
|
||||
/// </summary>
|
||||
public event EventHandler SelectSourceEvent;
|
||||
/// <summary>
|
||||
/// The source
|
||||
/// </summary>
|
||||
private List<KeyValuePair<string, string>> source = null;
|
||||
/// <summary>
|
||||
/// Gets or sets a value indicating whether [first event].
|
||||
/// </summary>
|
||||
/// <value><c>true</c> if [first event]; otherwise, <c>false</c>.</value>
|
||||
public bool FirstEvent { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the source.
|
||||
/// </summary>
|
||||
/// <value>The source.</value>
|
||||
public List<KeyValuePair<string, string>> Source
|
||||
{
|
||||
get { return source; }
|
||||
set
|
||||
{
|
||||
source = value;
|
||||
SetSource(value);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// The is show border
|
||||
/// </summary>
|
||||
private bool _IsShowBorder = false;
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets a value indicating whether this instance is show border.
|
||||
/// </summary>
|
||||
/// <value><c>true</c> if this instance is show border; otherwise, <c>false</c>.</value>
|
||||
public bool IsShowBorder
|
||||
{
|
||||
get { return _IsShowBorder; }
|
||||
set
|
||||
{
|
||||
_IsShowBorder = value;
|
||||
ucSplitLine_H1.Visible = value;
|
||||
ucSplitLine_H2.Visible = value;
|
||||
ucSplitLine_V1.Visible = value;
|
||||
ucSplitLine_V2.Visible = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// The select BTN
|
||||
/// </summary>
|
||||
UCBtnExt selectBtn;
|
||||
/// <summary>
|
||||
/// 选中按钮
|
||||
/// </summary>
|
||||
/// <value>The select BTN.</value>
|
||||
public UCBtnExt SelectBtn
|
||||
{
|
||||
get { return selectBtn; }
|
||||
set
|
||||
{
|
||||
if (selectBtn != null && !selectBtn.IsDisposed)
|
||||
{
|
||||
selectBtn.FillColor = System.Drawing.Color.White;
|
||||
selectBtn.RectColor = System.Drawing.Color.White;
|
||||
selectBtn.BtnForeColor = System.Drawing.Color.FromArgb(66, 66, 66);
|
||||
}
|
||||
bool blnEvent = FirstEvent ? true : (selectBtn != null);
|
||||
selectBtn = value;
|
||||
if (value != null)
|
||||
{
|
||||
selectBtn.FillColor = System.Drawing.Color.FromArgb(255, 77, 59);
|
||||
selectBtn.RectColor = System.Drawing.Color.FromArgb(255, 77, 59);
|
||||
selectBtn.BtnForeColor = System.Drawing.Color.White;
|
||||
if (blnEvent && SelectSourceEvent != null)
|
||||
SelectSourceEvent(selectBtn.Tag.ToStringExt(), null);
|
||||
}
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// Initializes a new instance of the <see cref="UCTimePanel" /> class.
|
||||
/// </summary>
|
||||
public UCTimePanel()
|
||||
{
|
||||
InitializeComponent();
|
||||
this.SizeChanged += UCTimePanel_SizeChanged;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Handles the SizeChanged event of the UCTimePanel control.
|
||||
/// </summary>
|
||||
/// <param name="sender">The source of the event.</param>
|
||||
/// <param name="e">The <see cref="EventArgs" /> instance containing the event data.</param>
|
||||
void UCTimePanel_SizeChanged(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// The row
|
||||
/// </summary>
|
||||
private int row = 0;
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the row.
|
||||
/// </summary>
|
||||
/// <value>The row.</value>
|
||||
public int Row
|
||||
{
|
||||
get { return row; }
|
||||
set
|
||||
{
|
||||
row = value;
|
||||
ReloadPanel();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// The column
|
||||
/// </summary>
|
||||
private int column = 0;
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the column.
|
||||
/// </summary>
|
||||
/// <value>The column.</value>
|
||||
public int Column
|
||||
{
|
||||
get { return column; }
|
||||
set
|
||||
{
|
||||
column = value;
|
||||
ReloadPanel();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Handles the Load event of the UCTimePanel control.
|
||||
/// </summary>
|
||||
/// <param name="sender">The source of the event.</param>
|
||||
/// <param name="e">The <see cref="EventArgs" /> instance containing the event data.</param>
|
||||
private void UCTimePanel_Load(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
#region 设置面板数据源
|
||||
/// <summary>
|
||||
/// 功能描述:设置面板数据源
|
||||
/// 作 者:HZH
|
||||
/// 创建日期:2019-06-25 15:02:15
|
||||
/// 任务编号:POS
|
||||
/// </summary>
|
||||
/// <param name="lstSource">lstSource</param>
|
||||
public void SetSource(List<KeyValuePair<string, string>> lstSource)
|
||||
{
|
||||
try
|
||||
{
|
||||
ControlHelper.FreezeControl(this, true);
|
||||
if (row <= 0 || column <= 0)
|
||||
return;
|
||||
if (Source != lstSource)
|
||||
Source = lstSource;
|
||||
int index = 0;
|
||||
SelectBtn = null;
|
||||
foreach (UCBtnExt btn in this.panMain.Controls)
|
||||
{
|
||||
if (lstSource != null && index < lstSource.Count)
|
||||
{
|
||||
btn.BtnText = lstSource[index].Value;
|
||||
btn.Tag = lstSource[index].Key;
|
||||
index++;
|
||||
}
|
||||
else
|
||||
{
|
||||
btn.BtnText = "";
|
||||
btn.Tag = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
ControlHelper.FreezeControl(this, false);
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
/// <summary>
|
||||
/// 设置选中项
|
||||
/// </summary>
|
||||
/// <param name="strKey">The string key.</param>
|
||||
public void SetSelect(string strKey)
|
||||
{
|
||||
foreach (UCBtnExt item in this.panMain.Controls)
|
||||
{
|
||||
if (item.Tag != null && item.Tag.ToStringExt() == strKey)
|
||||
{
|
||||
SelectBtn = item;
|
||||
return;
|
||||
}
|
||||
}
|
||||
SelectBtn = new UCBtnExt();
|
||||
}
|
||||
|
||||
#region 重置面板
|
||||
/// <summary>
|
||||
/// 功能描述:重置面板
|
||||
/// 作 者:HZH
|
||||
/// 创建日期:2019-06-25 15:02:05
|
||||
/// 任务编号:POS
|
||||
/// </summary>
|
||||
public void ReloadPanel()
|
||||
{
|
||||
if (row <= 0 || column <= 0)
|
||||
return;
|
||||
SelectBtn = null;
|
||||
this.panMain.Controls.Clear();
|
||||
this.panMain.ColumnCount = column;
|
||||
this.panMain.ColumnStyles.Clear();
|
||||
for (int i = 0; i < column; i++)
|
||||
{
|
||||
this.panMain.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
|
||||
}
|
||||
|
||||
this.panMain.RowCount = row;
|
||||
this.panMain.RowStyles.Clear();
|
||||
for (int i = 0; i < row; i++)
|
||||
{
|
||||
this.panMain.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
|
||||
}
|
||||
|
||||
for (int i = 0; i < row; i++)
|
||||
{
|
||||
for (int j = 0; j < column; j++)
|
||||
{
|
||||
UCBtnExt btn = new UCBtnExt();
|
||||
btn.BackColor = System.Drawing.Color.Transparent;
|
||||
btn.BtnBackColor = System.Drawing.Color.Transparent;
|
||||
btn.BtnFont = new System.Drawing.Font("微软雅黑", 13F);
|
||||
btn.BtnForeColor = System.Drawing.Color.FromArgb(66, 66, 66);
|
||||
btn.ConerRadius = 5;
|
||||
btn.Dock = DockStyle.Fill;
|
||||
btn.FillColor = System.Drawing.Color.White;
|
||||
btn.Font = new System.Drawing.Font("微软雅黑", 15F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Pixel);
|
||||
btn.Cursor = Cursor.Current;
|
||||
btn.IsShowRect = true;
|
||||
btn.IsRadius = true;
|
||||
btn.IsShowTips = false;
|
||||
btn.Name = "btn_" + i + "_" + j;
|
||||
btn.RectColor = System.Drawing.Color.White;
|
||||
btn.RectWidth = 1;
|
||||
btn.Width = this.Width;
|
||||
btn.TabIndex = 0;
|
||||
btn.TipsText = "";
|
||||
btn.BtnClick += btn_BtnClick;
|
||||
this.panMain.Controls.Add(btn, j, i);
|
||||
}
|
||||
}
|
||||
|
||||
if (Source != null)
|
||||
{
|
||||
SetSource(Source);
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// Handles the BtnClick event of the btn control.
|
||||
/// </summary>
|
||||
/// <param name="sender">The source of the event.</param>
|
||||
/// <param name="e">The <see cref="EventArgs" /> instance containing the event data.</param>
|
||||
void btn_BtnClick(object sender, EventArgs e)
|
||||
{
|
||||
var btn = (UCBtnExt)sender;
|
||||
if (btn.Tag == null)
|
||||
return;
|
||||
SelectBtn = btn;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user