在生成按钮这里定义就好
Button DelButton=new Button();
tc2.Controls.Add(DelButton);
DelButton.Text="删除";
DelButton.Click += new System.EventHandler(DelTableRow);
//这样定义后,每一个按钮都会执行DelTableRow事件InitializeComponent()事件里的for...是你加进去的吧?不要它了
Button DelButton=new Button();
tc2.Controls.Add(DelButton);
DelButton.Text="删除";
DelButton.Click += new System.EventHandler(DelTableRow);
//这样定义后,每一个按钮都会执行DelTableRow事件InitializeComponent()事件里的for...是你加进去的吧?不要它了
解决方案 »
- DataGrid生成EXCEL兼容word03和word07问题
- 关于gridview中的按钮调用js的问题
- 开源博客
- 怎么样实现一个下拉框和一个Label的无刷新联动操作?
- sql注入攻击是不是只要过滤登陆入口的非法字符就可以了?
- Asp.net 操纵Word? 十万分火急!~~~~~~~~
- 一个正则表达式替换的问题?
- 帮忙看看,这个错误信息是怎么回事呢?Control 'uname' of type 'TextBox' must be placed inside a form tag with runat=server.
- 传送数据集的问题
- 如何控制DataGrid导航栏中自定义的文本框控件?请赐教…
- 高分求助?在线等待
- 难得的节日 祝大家节日快乐
现在的问题主要是如何声明DelTableRow事件,使得每一行的Button按钮事件只会删除当前按钮所在的表格中的行?
DelButton.ID="myButton"+i;
然后在按钮事件中取得当前按钮,就知道对应的行了
void DelTableRow(object sender,EventArgs e)
{
string buttonid=((Button)sender).ID; //当得当前点击按钮的ID号
}
然后要自己处理一下,找到当前要删除的行
(根据后面的来确定myButton0为第一行,mybutton1为第二行...)
DelButton.Click += new System.EventHandler
大概只能
void DelTableRow(object sender,EventArgs e)你可以通过获取sender的属性来判断是哪一行
比如这样
Button DelButton=new Button();
DelButton.Id=uint.ToString();
tc2.Controls.Add(DelButton);
void DelTableRow(object sender,EventArgs e)
{
int rowIndex=((Control)sender).ID;
}
int rowIndex=int.Parse(((Control)sender).ID);
应该是int rowIndex=int.Parse(((Control)sender).ID);