.cs
EdiFormTemplate template = new EdiFormTemplate();
protected void Page_Load(object sender, EventArgs e)
{
InputByBatchIndexList.Templates.EditForm = template;
template.Grid = InputByBatchIndexList;
}
#region EdiFormTemplate
public class EdiFormTemplate : ITemplate
{
private ASPxGridView _gridView;
public ASPxGridView Grid
{
get
{
return _gridView;
}
set
{
_gridView = value;
}
}
public EdiFormTemplate()
{
}
public void InstantiateIn(Control container)
{
int index = (container as GridViewEditFormTemplateContainer).VisibleIndex;
string rowAndCol = string.Empty;
bool isFirst = false;
string oldValue = string.Empty;
ASPxPageControl pc = new ASPxPageControl();
pc.ID = "ASPxPageControl1";
if (HttpContext.Current.Session["dt_DynamicListByItem"] != null)
{
DataTable dt_DynamicList = (DataTable)HttpContext.Current.Session["dt_DynamicListByItem"];
int i = 0;
foreach (DataColumn dc in dt_DynamicList.Columns)
{
if (i > 4)
{
//绑定列的字段
pc.TabPages.Add(dc.ColumnName.ToString());
}
i++;
}
int j = 0;
foreach (DataColumn dc in dt_DynamicList.Columns)
{
if (j > 4)
{
//绑定数据
ASPxLabel lab1 = new ASPxLabel();
lab1.Text = dc.ColumnName.ToString() + ":";
pc.TabPages[j - 5].Controls.Add(lab1);
HiddenField hf = new HiddenField();
TextBox catTxt = new TextBox();
catTxt.ID = "ASPxTextBox" + (j - 4).ToString();
hf.ID = "HiddenField" + (j - 4).ToString();
if (!_gridView.IsNewRowEditing)
{
catTxt.Text = _gridView.GetRowValues(index, dc.ColumnName.ToString()).ToString();
rowAndCol = index.ToString() + "," + (j).ToString();
oldValue = catTxt.Text;
InputByItems_TopLims_InPutByItems_Index indexpage = new InputByItems_TopLims_InPutByItems_Index();
hf.Value = indexpage.GetResultID(index, j);
if (catTxt.Text != "")
{
isFirst = true;
}
catTxt.Attributes.Add("onchange", "ModiReasonClick('" + rowAndCol + "','" + isFirst + "','" + oldValue + "')");
}
pc.TabPages[j - 5].Controls.Add(catTxt);
pc.TabPages[j - 5].Controls.Add(hf);
}
j++;
}
}
container.Controls.Add(pc);
ASPxGridViewTemplateReplacement upd = new ASPxGridViewTemplateReplacement();
upd.ReplacementType = GridViewTemplateReplacementType.EditFormUpdateButton;
upd.ID = "Update";
container.Controls.Add(upd);
ASPxGridViewTemplateReplacement can = new ASPxGridViewTemplateReplacement();
can.ReplacementType = GridViewTemplateReplacementType.EditFormCancelButton;
can.ID = "Cancel";
container.Controls.Add(can);
}
}
#endregion