SheetInstanceNameEditor.cs
资源名称:H3_OA.rar [点击查看]
上传用户:li2971742
上传日期:2021-11-18
资源大小:39096k
文件大小:3k
源码类别:
OA系统
开发平台:
C#
- using System;
- using System.Collections;
- using System.Web.UI;
- using System.Web.UI.WebControls;
- using System.ComponentModel;
- using System.Drawing;
- using System.Drawing.Design;
- [assembly: TagPrefix("OThinker.H3.WorkSheet", "SheetControls")]
- namespace OThinker.H3.WorkSheet
- {
- /// <summary>
- /// SheetInstanceNameEditor 的摘要说明。
- /// </summary>
- ///
- [ToolboxBitmap(typeof(SheetInstanceNameEditor), "OThinker.H3.WorkSheet.SheetInstanceNameEditor.bmp")]
- [DefaultProperty("Text"), ToolboxData("<{0}:SheetInstanceNameEditor runat=server></{0}:SheetInstanceNameEditor>")]
- public class SheetInstanceNameEditor : System.Web.UI.WebControls.TextBox, ISheetControl
- {
- public SheetInstanceNameEditor()
- {
- }
- public const string DataField = OThinker.H3.Data.Keywords.InstanceParser.InstanceName;
- public const string Html = "<input name="" + DataField + "" type="text" value="[" + DataField + "]" />";
- private RenderType _RenderType = RenderType.LabelWhenDisable;
- /// <summary>
- /// 显示方式
- /// </summary>
- [Bindable(true), Category("WorkSheet"), Description("控制控件的显示方式")]
- public RenderType RenderType
- {
- get
- {
- return this._RenderType;
- }
- set
- {
- this._RenderType = value;
- }
- }
- #region ISheetControl 成员
- public virtual void LoadDataField(OThinker.H3.WorkSheet.SheetPage SheetPage)
- {
- // 获得名称
- string name = SheetPage.Enviroment.InstanceManager.GetInstanceName(SheetPage.Enviroment.InstanceId);
- this.Text = name;
- if (SheetPage.Enviroment.Workflow.StartActivity == SheetPage.Enviroment.ActivityName)
- {
- // 如果当期活动为发起活动的话,则允许写
- this.Enabled = true;
- }
- else
- {
- this.Enabled = false;
- }
- }
- public virtual bool ValidateDataField(OThinker.H3.WorkSheet.SheetPage SheetPage, System.Collections.Generic.List<string> Errors)
- {
- return true;
- }
- public virtual void SaveDataField(OThinker.H3.WorkSheet.SheetPage SheetPage)
- {
- if (SheetPage.Enviroment.Workflow.StartActivity == SheetPage.Enviroment.ActivityName)
- {
- // 写名称
- SheetPage.Enviroment.InstanceManager.SetInstanceName(SheetPage.Enviroment.InstanceId, this.Text);
- SheetPage.Enviroment.WorkItemManager.UpdateInstanceName(SheetPage.Enviroment.WorkItemID, this.Text);
- }
- }
- #endregion
- protected override void Render(HtmlTextWriter writer)
- {
- if (this.Enabled || this.RenderType != RenderType.LabelWhenDisable)
- {
- base.Render(writer);
- }
- else
- {
- writer.Write(this.Text);
- }
- }
- }
- }