📄 identifiersform.ascx.cs
字号:
namespace Caisis.UI.Modules.All.DataEntryForms
{
using System;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Web;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Collections;
using System.Collections.Specialized;
using Caisis.Controller;
using Caisis.DataAccess;
using Caisis.BusinessObject;
using Caisis.UI.Core.Classes;
using Caisis.UI.Core.Classes.CustomControls;
public abstract class IdentifiersForm : DataEntryControl
{
protected ComboBox IdType;
protected HtmlInputText IdentifierFld;
protected HtmlInputHidden IdentifierId;
override protected void Page_Load(object sender, System.EventArgs e)
{
//populate look up and distinct value select boxes
//create arrays that populate combo boxes
Page.RegisterClientScriptBlock("IdType", PageUtil.FillComboDropDown(IdType.RefBy, "IdType"));
string reqFieldArray = PageUtil.CreateValidationScript("'"+IdentifierFld.ClientID+"', '"+IdType.ClientID+"'");
Page.RegisterClientScriptBlock("requiredFieldArray", reqFieldArray);
base.Page_Load(sender, e);
}
override protected object SaveViewState()
{
//add select and combo boxes to view state
PageUtil.AddComboToViewState(ViewState,IdType);
return base.SaveViewState();
}
override public HtmlInputHidden GetPrimKeyField()
{
return IdentifierId;
}
override protected DataEntryController GetController()
{
return new IdentifierController(new IdentifierDa()); //NOTE: fix args
}
override protected void SetDataEntryInfo()
{
this._tableInfo = "Identifiers";
this._dataEntryTitle = "Identifying Information";
}
override protected BizObject GetParams()
{
Identifier biz = new Identifier();
DataRow dr = biz.Tables[Identifier.Table_Identifiers].NewRow();
if (!IdentifierId.Value.Equals(""))
{
dr[Identifier.IdentifierId] = IdentifierId.Value;
}
//below assignment only valid for text and textarea input.. need to modify for other form elements
//selects use: Request.Form[FieldName.UniqueID].ToString();
//dates use: PageUtil.ObjToDateTime(FieldName.Value);
//checkbox use: if(SurgPending.Checked){dr[Surgery.SurgPending] = 1;}
//Patient ID should = this.patientID
dr[Identifier.PatientId] = this.patientID;
dr[Identifier.IdType] = Request.Form[IdType.UniqueID].ToString();
dr[Identifier.IdentifierFld] = IdentifierFld.Value;
AddBaseParams(dr);
biz.Tables[Identifier.Table_Identifiers].Rows.Add(dr);
biz.AcceptChanges();
return biz;
}
protected override void SetFields(BizObject bz)
{
Identifier biz = (Identifier)bz;
DataRow dr = biz.Tables[Identifier.Table_Identifiers].Rows[0];
//below assignment good only for text and input fields, checkboxes, selects, radios need additional logic
//selects use: PageUtil.SelectDropDownItem(fieldIdName, dr[Object.FieldName]);
IdentifierId.Value = dr[Identifier.IdentifierId].ToString();
IdentifierFld.Value = dr[Identifier.IdentifierFld].ToString();
IdType.Value = dr[Identifier.IdType].ToString();
SetBaseFields(dr);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -