|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.ComponentModel;
|
|
|
|
|
using System.Data;
|
|
|
|
|
using System.Drawing;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Windows.Forms;
|
|
|
|
|
|
|
|
|
|
namespace Mesnac.Controls.Default
|
|
|
|
|
{
|
|
|
|
|
[ToolboxBitmap(typeof(System.Windows.Forms.Label))]
|
|
|
|
|
public partial class ReplaceLabel : System.Windows.Forms.Label
|
|
|
|
|
{
|
|
|
|
|
public ReplaceLabel()
|
|
|
|
|
{
|
|
|
|
|
InitializeComponent();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public ReplaceLabel(IContainer container)
|
|
|
|
|
{
|
|
|
|
|
container.Add(this);
|
|
|
|
|
|
|
|
|
|
InitializeComponent();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
protected override void OnPaint(PaintEventArgs pe)
|
|
|
|
|
{
|
|
|
|
|
// TODO: 在此处添加自定义绘制代码
|
|
|
|
|
|
|
|
|
|
// 调用基类 OnPaint
|
|
|
|
|
base.OnPaint(pe);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#region bHaveAction
|
|
|
|
|
private bool _bHaveAction = false;
|
|
|
|
|
public bool bHaveAction
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return _bHaveAction;
|
|
|
|
|
}
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
_bHaveAction = value;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
#endregion
|
|
|
|
|
#region Text
|
|
|
|
|
private string _replaceExpress = string.Empty;
|
|
|
|
|
private Dictionary<string, string> dic = new Dictionary<string, string>();
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 替换表达式0:未处理|1:已处理
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
|
|
|
|
public string ReplaceExpress
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return _replaceExpress;
|
|
|
|
|
}
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
_replaceExpress = value;
|
|
|
|
|
if (!String.IsNullOrWhiteSpace(this._replaceExpress))
|
|
|
|
|
{
|
|
|
|
|
string[] replaces = this._replaceExpress.Split(new char[] { '|' });
|
|
|
|
|
dic.Clear();
|
|
|
|
|
foreach (string str in replaces)
|
|
|
|
|
{
|
|
|
|
|
string[] ss = str.Split(new char[] { ':' });
|
|
|
|
|
if (ss.Length == 2 && !dic.ContainsKey(ss[0]))
|
|
|
|
|
{
|
|
|
|
|
dic.Add(ss[0], ss[1]);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
private string _textName = null;
|
|
|
|
|
public string TextName
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return _textName;
|
|
|
|
|
}
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
_textName = value;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
private string _textValue = string.Empty;
|
|
|
|
|
public string TextValue
|
|
|
|
|
{
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
this._textValue = value;
|
|
|
|
|
if (!this.DesignMode)
|
|
|
|
|
{
|
|
|
|
|
if (string.IsNullOrWhiteSpace(this._replaceExpress))
|
|
|
|
|
{
|
|
|
|
|
this.Text = this._textValue;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
//this.Text = string.Format(this.Format, this._textValue);
|
|
|
|
|
if (String.IsNullOrWhiteSpace(this._textValue))
|
|
|
|
|
{
|
|
|
|
|
this.Text = String.Empty;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
this.Text = this.dic.ContainsKey(this._textValue) ? this.dic[this._textValue] : String.Empty;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return this._textValue;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
#endregion
|
|
|
|
|
#region Left
|
|
|
|
|
private string _xName = null;
|
|
|
|
|
public string XName
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return _xName;
|
|
|
|
|
}
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
_xName = value;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
private int? _xValue = null;
|
|
|
|
|
public int? XValue
|
|
|
|
|
{
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
this._xValue = value;
|
|
|
|
|
if (!this.DesignMode)
|
|
|
|
|
{
|
|
|
|
|
if (this._xValue != null)
|
|
|
|
|
{
|
|
|
|
|
this.Left = (int)this._xValue;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return this._xValue;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
#endregion
|
|
|
|
|
#region Top
|
|
|
|
|
private string _yName = null;
|
|
|
|
|
public string YName
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return _yName;
|
|
|
|
|
}
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
_yName = value;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
private int? _yValue = null;
|
|
|
|
|
public int? YValue
|
|
|
|
|
{
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
this._yValue = value;
|
|
|
|
|
if (!this.DesignMode)
|
|
|
|
|
{
|
|
|
|
|
if (this._yValue != null)
|
|
|
|
|
{
|
|
|
|
|
this.Top = (int)this._yValue;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return this._yValue;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
#endregion
|
|
|
|
|
#region Width
|
|
|
|
|
private string _widthName = null;
|
|
|
|
|
public string WidthName
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return _widthName;
|
|
|
|
|
}
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
_widthName = value;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
private int? _widthValue = null;
|
|
|
|
|
public int? WidthValue
|
|
|
|
|
{
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
this._widthValue = value;
|
|
|
|
|
if (!this.DesignMode)
|
|
|
|
|
{
|
|
|
|
|
if (this._widthValue != null)
|
|
|
|
|
{
|
|
|
|
|
this.Width = (int)this._widthValue;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return this._widthValue;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
#endregion
|
|
|
|
|
#region Height
|
|
|
|
|
private string _heightName = null;
|
|
|
|
|
public string HeightName
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return _heightName;
|
|
|
|
|
}
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
_heightName = value;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
private int? _heightValue = null;
|
|
|
|
|
public int? HeightValue
|
|
|
|
|
{
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
this._heightValue = value;
|
|
|
|
|
if (!this.DesignMode)
|
|
|
|
|
{
|
|
|
|
|
if (this._heightValue != null && !this.DesignMode)
|
|
|
|
|
{
|
|
|
|
|
this.Height = (int)this._heightValue;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return this._heightValue;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
#endregion
|
|
|
|
|
#region Visible
|
|
|
|
|
//private string _visibleName = null;
|
|
|
|
|
//public string VisibleName
|
|
|
|
|
//{
|
|
|
|
|
// get
|
|
|
|
|
// {
|
|
|
|
|
// return _visibleName;
|
|
|
|
|
// }
|
|
|
|
|
// set
|
|
|
|
|
// {
|
|
|
|
|
// _visibleName = value;
|
|
|
|
|
// }
|
|
|
|
|
//}
|
|
|
|
|
//private int? _visibleValue = null;
|
|
|
|
|
//public int? VisibleValue
|
|
|
|
|
//{
|
|
|
|
|
// set
|
|
|
|
|
// {
|
|
|
|
|
// this._visibleValue = value;
|
|
|
|
|
// if (!this.DesignMode)
|
|
|
|
|
// {
|
|
|
|
|
// if (this._visibleValue != null)
|
|
|
|
|
// {
|
|
|
|
|
// this.Visible = ((int)this._visibleValue > 5);
|
|
|
|
|
// this.Refresh();
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// }
|
|
|
|
|
// get
|
|
|
|
|
// {
|
|
|
|
|
// return this._visibleValue;
|
|
|
|
|
// }
|
|
|
|
|
//}
|
|
|
|
|
#endregion
|
|
|
|
|
#region FillColor
|
|
|
|
|
private Color _newFillColor = Color.Red;
|
|
|
|
|
[Description("背景色(2)"), Category("Appearance")]
|
|
|
|
|
public Color NewFillColor
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return _newFillColor;
|
|
|
|
|
}
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
_newFillColor = value;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//原背景色
|
|
|
|
|
private Color _oldFillColor = Color.DarkGray;
|
|
|
|
|
[Description("背景色(1)"), Category("Appearance")]
|
|
|
|
|
public Color OldFillColor
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return _oldFillColor;
|
|
|
|
|
}
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
_oldFillColor = value;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
private string _fillColorName = null;
|
|
|
|
|
public string FillColorName
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return _fillColorName;
|
|
|
|
|
}
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
_fillColorName = value;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private int? _fillColorValue = null;
|
|
|
|
|
public int? FillColorValue
|
|
|
|
|
{
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
this._fillColorValue = value;
|
|
|
|
|
if (!this.DesignMode)
|
|
|
|
|
{
|
|
|
|
|
if (this._fillColorValue != null)
|
|
|
|
|
{
|
|
|
|
|
if ((int)this._fillColorValue > 0)
|
|
|
|
|
{
|
|
|
|
|
this.BackColor = this.NewFillColor;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
this.BackColor = this.OldFillColor;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return this._fillColorValue;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
#endregion
|
|
|
|
|
}
|
|
|
|
|
}
|