?? top.cs
字號:
using System;
using System.Drawing;
namespace GoldPrinter
{
/// <summary>
/// Top,提供一個一行三列的對象,第一列居左,第三列居右,中間一旬居中。默認每頁重復打印
///
/// 程序提供:周方勇;Email:flygoldfish@sina.com。
/// 請 關 注:WebMIS.Net快速開發工具,不寫一行程序開發B/S架構下MIS、OA、CRM、人事管理、檔案管理等數據庫網頁系統。簡單、實用、穩定、可靠。
/// 下 載:
/// 上海奧聯:WWW.AlinkSoft.COM
/// 用友華表:WWW.CellSoft.CC
///★★★★★您可以免費使用此程序,但是請您保留此說明,以維護知識產權★★★★★
/// </summary>
public class Top:Printer
{
//核心為網格對象,不對最終用戶公開
protected DrawGrid mdrawGrid;
protected string _text;
protected object _dataSource;
public Top()
{
this.IsDrawAllPage = true;
_text = "";
mdrawGrid = new DrawGrid();
//mdrawGrid.AlignMent = AlignFlag.Left;
mdrawGrid.ColsAlignString = "LCR";
mdrawGrid.Border = GridBorderFlag.None;
mdrawGrid.Line = GridLineFlag.None;
mdrawGrid.Merge = GridMergeFlag.None;
this.Font = new Font("宋體",11);
mdrawGrid.RowHeight = this.Font.Height;
mdrawGrid.Initialize(1,3);
}
public string Text
{
get
{
return this._text;
}
set
{
this._text = value;
SetText(this._text);
}
}
/// <summary>
/// 獲取或設置數據源,可以是以'|'分隔的字符串或一維數組
/// </summary>
public object DataSource
{
get
{
return this._dataSource;
}
set
{
if (value != null)
{
if (value.GetType().ToString() == "System.String")
{
this.Text = (string)value;
}
else if(value.GetType().ToString() == "System.String[]")
{
string mstr = "";
string[] marr = (string[])value;
if (marr.Length > 0)
{
for(int i = 0 ; i < marr.Length ; i++)
{
mstr += "|" + marr[i];
}
mstr = mstr.Substring(1);
this.Text = mstr;
}
else
{
this.Text = "";
}
}
}
else
{
this._dataSource = null;
}
}
}
/// <summary>
/// 獲取對象的高
/// </summary>
public override float Height
{
get
{
return mdrawGrid.Rows * mdrawGrid.RowHeight;
}
}
/// <summary>
/// 用分隔符(默認'|')分隔的串設置文本值
/// </summary>
/// <param name="text"></param>
public virtual void SetText(string text)
{
this._text = text;
SetText(text,'|');
}
/// <summary>
/// 用指定分隔符分隔的串設置文本值
/// </summary>
/// <param name="text"></param>
/// <param name="split"></param>
public virtual void SetText(string text,char split)
{
this._text = text;
string mstr = text;
char msplit = split;
string[] arrStr = mstr.Split(msplit);
if (arrStr.Length > 0)
{
mdrawGrid.SetText(0,0,arrStr[0]);
}
if (arrStr.Length > 1)
{
mdrawGrid.SetText(0,1,arrStr[1]);
}
if (arrStr.Length > 2)
{
mdrawGrid.SetText(0,2,arrStr[2]);
}
}
/// <summary>
/// 在繪圖表面繪制對象繪制文本
/// </summary>
public override void Draw()
{
base.Draw();
//在指定的區域內繪制文本
mdrawGrid.Rectangle = new Rectangle((int)this.RectangleF.X + (int)this.MoveX,(int)this.RectangleF.Y + (int)this.MoveY,(int)this.RectangleF.Width,(int)this.RectangleF.Height);
mdrawGrid.Graphics = this.Graphics;
mdrawGrid.Draw();
}
}//End Class
}//End NameSpace
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -