/// <summary>
/// 生成Tables
/// </summary>
/// <param name="varDt"></param>
private void GenerateTables(DataTable varDt)
{
if(varDt.Rows.Count == 0)
{
HtmlTableRow tr = new HtmlTableRow();
tr.Align = "Center";
HtmlTableCell trCell = new HtmlTableCell();
trCell.InnerHtml = "<FONT face=\"宋体\" color=\"red\">当前用户没有议价类型的品种分类!</FONT>";
tr.Cells.Add(trCell);
this.table_Class.Rows.Add(tr);
return;
} foreach(DataRow dr in varDt.Rows)
{
//动态控件
HtmlTable tb = new HtmlTable();
HtmlTableCell cellName = new HtmlTableCell();
HtmlTableCell cellTime = new HtmlTableCell();
HtmlTableCell cellButton = new HtmlTableCell();
HtmlTableCell cellContent = new HtmlTableCell();
HtmlTableRow rowClassName = new HtmlTableRow();
HtmlTableRow rowContent = new HtmlTableRow();
//动态控件属性
cellName.Align = "Left";
cellName.Attributes.Add( "style","BORDER-RIGHT-STYLE: none" );
cellName.Width = "30%";
cellName.BgColor = "#ece9d8";
cellTime.Align = "Left";
cellTime.Width = "50%";
cellTime.Attributes.Add( "style","BORDER-RIGHT-STYLE: none" );
cellTime.BgColor = "#ece9d8"; cellButton.Align = "Center";
cellButton.BgColor = "#ece9d8"; tb.Border = 0;
tb.CellSpacing = 1;
tb.Width = "100%";
tb.CellPadding = 2;
//赋值
cellName.InnerText = "品种分类名称: " + dr["PCLASS_NAME"].ToString(); if(dr["BARGAIN_TIME_START"].ToString() == "" || dr["BARGAIN_TIME_START"].ToString() == "" )
{
cellTime.InnerHtml = "<FONT face=\"宋体\" color=\"red\">该品种分类议价报价时间尚未设定!</FONT>"; Button btn = new Button();
btn.ID = dr["ID"].ToString();
btn.Text = "不能进入";
btn.Enabled = false;
cellButton.Controls.Add(btn);
}
else
{
cellTime.InnerText = "议价开始时间:" + DateTime.Parse(dr["BARGAIN_TIME_START"].ToString()).ToString("yyyy-MM-dd HH:mm:ss");
cellTime.InnerText += " 结束时间:" + DateTime.Parse(dr["BARGAIN_TIME_END"].ToString()).ToString("yyyy-MM-dd HH:mm:ss");
Button btn = new Button();
btn.ID = dr["ID"].ToString();
btn.Text = (dr["FLAG"].ToString() == "1") ? "进入商品包列表" : "浏览商品包列表";
btn.Click += new EventHandler(btn_Click);
btn.CommandName = (dr["FLAG"].ToString() == "1") ? "Enter":"View";
cellButton.Controls.Add(btn);
} rowClassName.Cells.Add(cellName);
rowClassName.Cells.Add(cellTime);
rowClassName.Cells.Add(cellButton); tb.Rows.Add(rowClassName); if(dr["CONTENT"].ToString() != "")
{
cellContent.InnerHtml = "报价原则: " + dr["CONTENT"].ToString();
cellContent.ColSpan = 3;
rowContent.Cells.Add(cellContent);
tb.Rows.Add(rowContent);
}
//添加动态行
HtmlTableRow tr = new HtmlTableRow();
tr.Align = "Left";
HtmlTableCell trCell = new HtmlTableCell(); trCell.Controls.Add(tb);
tr.Cells.Add(trCell);
this.table_Class.Rows.Add(tr);
//添加分隔行
HtmlTableRow spliterRow = new HtmlTableRow();
HtmlTableCell spliterCell = new HtmlTableCell();
spliterCell.Height = "10px";
spliterRow.Cells.Add(spliterCell);
this.table_Class.Rows.Add(spliterRow);
}
} /// <summary>
/// 跳转到商品包列表
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_Click(object sender, EventArgs e)
{
this.ViewState["PClass_Id"] = ((Button)sender).ID;
this.ViewState["ViewFlag"] = (((Button)sender).CommandName == "View") ? 1 : 0;
this.SetModule(this.ViewState);
PageConfiguration.TransferTo(this.Server,"Modules/BargainPriceMgr/CommercePackList.ascx");
}
/// 生成Tables
/// </summary>
/// <param name="varDt"></param>
private void GenerateTables(DataTable varDt)
{
if(varDt.Rows.Count == 0)
{
HtmlTableRow tr = new HtmlTableRow();
tr.Align = "Center";
HtmlTableCell trCell = new HtmlTableCell();
trCell.InnerHtml = "<FONT face=\"宋体\" color=\"red\">当前用户没有议价类型的品种分类!</FONT>";
tr.Cells.Add(trCell);
this.table_Class.Rows.Add(tr);
return;
} foreach(DataRow dr in varDt.Rows)
{
//动态控件
HtmlTable tb = new HtmlTable();
HtmlTableCell cellName = new HtmlTableCell();
HtmlTableCell cellTime = new HtmlTableCell();
HtmlTableCell cellButton = new HtmlTableCell();
HtmlTableCell cellContent = new HtmlTableCell();
HtmlTableRow rowClassName = new HtmlTableRow();
HtmlTableRow rowContent = new HtmlTableRow();
//动态控件属性
cellName.Align = "Left";
cellName.Attributes.Add( "style","BORDER-RIGHT-STYLE: none" );
cellName.Width = "30%";
cellName.BgColor = "#ece9d8";
cellTime.Align = "Left";
cellTime.Width = "50%";
cellTime.Attributes.Add( "style","BORDER-RIGHT-STYLE: none" );
cellTime.BgColor = "#ece9d8"; cellButton.Align = "Center";
cellButton.BgColor = "#ece9d8"; tb.Border = 0;
tb.CellSpacing = 1;
tb.Width = "100%";
tb.CellPadding = 2;
//赋值
cellName.InnerText = "品种分类名称: " + dr["PCLASS_NAME"].ToString(); if(dr["BARGAIN_TIME_START"].ToString() == "" || dr["BARGAIN_TIME_START"].ToString() == "" )
{
cellTime.InnerHtml = "<FONT face=\"宋体\" color=\"red\">该品种分类议价报价时间尚未设定!</FONT>"; Button btn = new Button();
btn.ID = dr["ID"].ToString();
btn.Text = "不能进入";
btn.Enabled = false;
cellButton.Controls.Add(btn);
}
else
{
cellTime.InnerText = "议价开始时间:" + DateTime.Parse(dr["BARGAIN_TIME_START"].ToString()).ToString("yyyy-MM-dd HH:mm:ss");
cellTime.InnerText += " 结束时间:" + DateTime.Parse(dr["BARGAIN_TIME_END"].ToString()).ToString("yyyy-MM-dd HH:mm:ss");
Button btn = new Button();
btn.ID = dr["ID"].ToString();
btn.Text = (dr["FLAG"].ToString() == "1") ? "进入商品包列表" : "浏览商品包列表";
btn.Click += new EventHandler(btn_Click);
btn.CommandName = (dr["FLAG"].ToString() == "1") ? "Enter":"View";
cellButton.Controls.Add(btn);
} rowClassName.Cells.Add(cellName);
rowClassName.Cells.Add(cellTime);
rowClassName.Cells.Add(cellButton); tb.Rows.Add(rowClassName); if(dr["CONTENT"].ToString() != "")
{
cellContent.InnerHtml = "报价原则: " + dr["CONTENT"].ToString();
cellContent.ColSpan = 3;
rowContent.Cells.Add(cellContent);
tb.Rows.Add(rowContent);
}
//添加动态行
HtmlTableRow tr = new HtmlTableRow();
tr.Align = "Left";
HtmlTableCell trCell = new HtmlTableCell(); trCell.Controls.Add(tb);
tr.Cells.Add(trCell);
this.table_Class.Rows.Add(tr);
//添加分隔行
HtmlTableRow spliterRow = new HtmlTableRow();
HtmlTableCell spliterCell = new HtmlTableCell();
spliterCell.Height = "10px";
spliterRow.Cells.Add(spliterCell);
this.table_Class.Rows.Add(spliterRow);
}
} /// <summary>
/// 跳转到商品包列表
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_Click(object sender, EventArgs e)
{
this.ViewState["PClass_Id"] = ((Button)sender).ID;
this.ViewState["ViewFlag"] = (((Button)sender).CommandName == "View") ? 1 : 0;
this.SetModule(this.ViewState);
PageConfiguration.TransferTo(this.Server,"Modules/BargainPriceMgr/CommercePackList.ascx");
}
OK?
有问题再问
//这里是事件 //这个是你的方法
自己看着写吧,根据这个形式!
// 这是事件 //这是方法名
就这个形式,自己写吧!
btn.ID = dr["ID"].ToString();
btn.Text = (dr["FLAG"].ToString() == "1") ? "进入商品包列表" : "浏览商品包列表";
btn.Click += new EventHandler(btn_Click);
最后一句就是填加事件!
private void btn_Click(object sender, EventArgs e)
{
事件的具体内容自己写
}
dim B as new Button
t.controls.add(B)
B.left=t.left+20
b.top=t.top+20
AddHandler B.Click,addressOf(Me.BtnClick)
http://blog.joycode.com/saucer/posts/19456.aspx
btn.ID = Guid.NewGuid();//用guid值保证控件的id唯一
btn.Text = "提交";
btn.Click += new EventHandler(btn_Click);//给按钮赋点击事件,即点击后调用btn_Click(object sender, EventArgs e)
Panel1.Controls.Add(btn);//把按钮添加到Panel中,这个Panel必须先放在页面上
以上添加按钮成功点击按钮后的执行方法如下
private void btn_Click(object sender, EventArgs e)
{
//事件的具体内容自己写
}
说明:
将上面的语句写到一自定义函数中,此处topPanel为一HTMLCtrol且runat="Server"
并且在页面初始化函数中调用即可
InitializeComponent();
base.OnInit(e);
就在这两句之后
dim btn as new Button
btn.text="确定"
AddHandler btn.Click,addressOf btn_click
End SubSub btn_click(ByVal sender As System.Object, ByVal e As System.EventArgs)
response.write("hello")
End Sub
这样在点击了Button1后,会生成一个新的按钮btn,但是如果点击btn,那在触发btn_click事件之前就已经传到服务器了,然后页面重新刷新,btn这个按钮也没有了,更别说执行事件了.
有什么办法可以执行这个btn_click啊?