100分,为什么在DataGrid中只能用LinkButton作为按钮时,才能引发Edit\update\delete事件 我初学,为什么把按钮列中的按钮换成Button或ImageButton就不能引发,Edit事件了呢?我已经写CommandName=Edit了?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不是都Button列没有自己用模板列啊? 可以滴,只要了正确设置了CommandName 估计是事件与对应函数脱钩了,看看DataGrid属性窗口中的事件EditCommand\UpdateCommand\DeketeCommand是否指向了正确的函数. 据我所知,你还是看看你的command,如果是origin版的,经常会这样,555555555,我不得不自己手工写 可以用 Button的 设置一下 CommandName 就行了 在EditCommand事件里就能捕捉到 if(e.CommandName == "设置的值"){//..........} 这个没有问题,用什么按钮没有任何关系,给你一段示例代码,是使用imagebutton的。aspx:<asp:datagrid id="dgList" runat="server" Width="100%" CssClass="datagrid" AutoGenerateColumns="False" CellPadding="3" BorderColor="#003366" BackColor="White" AllowSorting="True"> <AlternatingItemStyle BackColor="#EFF5FB"></AlternatingItemStyle> <ItemStyle HorizontalAlign="Left" BackColor="White"></ItemStyle> <HeaderStyle Font-Bold="True" HorizontalAlign="Center" ForeColor="White" BackColor="#6699CC"></HeaderStyle> <Columns> <asp:BoundColumn Visible="False" DataField="ID" HeaderText="ID"></asp:BoundColumn> <asp:BoundColumn DataField="InputDate" HeaderText="日期"> <HeaderStyle Width="70px"></HeaderStyle> <ItemStyle HorizontalAlign="Center"></ItemStyle> </asp:BoundColumn> <asp:BoundColumn DataField="ShiftDesc" HeaderText="班次"> <HeaderStyle Width="60px"></HeaderStyle> <ItemStyle HorizontalAlign="Center"></ItemStyle> </asp:BoundColumn> <asp:BoundColumn DataField="Auditor" HeaderText="Auditor"> <HeaderStyle Width="60px"></HeaderStyle> <ItemStyle HorizontalAlign="Center"></ItemStyle> </asp:BoundColumn> <asp:BoundColumn DataField="FloorDesc" HeaderText="楼层"> <HeaderStyle Width="20%"></HeaderStyle> <ItemStyle HorizontalAlign="Center"></ItemStyle> </asp:BoundColumn> <asp:BoundColumn DataField="LineDesc" HeaderText="拉号"> <HeaderStyle Width="20%"></HeaderStyle> <ItemStyle HorizontalAlign="Center"></ItemStyle> </asp:BoundColumn> <asp:BoundColumn DataField="Series" HeaderText="系列"> <HeaderStyle Width="25%"></HeaderStyle> <ItemStyle HorizontalAlign="Center"></ItemStyle> </asp:BoundColumn> <asp:BoundColumn DataField="Model" HeaderText="MODEL"> <HeaderStyle Width="35%"></HeaderStyle> </asp:BoundColumn> <asp:BoundColumn DataField="PN80" HeaderText="80 P/N"> <HeaderStyle Width="90px"></HeaderStyle> <ItemStyle HorizontalAlign="Center"></ItemStyle> </asp:BoundColumn> <asp:TemplateColumn HeaderText="查看"> <HeaderStyle Width="60px"></HeaderStyle> <ItemStyle HorizontalAlign="Center"></ItemStyle> <ItemTemplate> <IMG id="btnView" style="CURSOR: hand" alt="" src="../../CommonFiles/Images/btnView.gif" width="54" runat="server"> </ItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn HeaderText="修改"> <HeaderStyle HorizontalAlign="Center" Width="60px"></HeaderStyle> <ItemStyle HorizontalAlign="Center"></ItemStyle> <ItemTemplate> <asp:ImageButton id="btnEdit" runat="server" ImageUrl="../../CommonFiles/Images/btnEdit.gif" CommandName="Update"></asp:ImageButton> </ItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn HeaderText="删除"> <HeaderStyle HorizontalAlign="Center" Width="60px"></HeaderStyle> <ItemStyle HorizontalAlign="Center"></ItemStyle> <ItemTemplate> <asp:ImageButton id="btnDelete" runat="server" ImageUrl="../../CommonFiles/Images/btnDelete.gif" CommandName="Delete"></asp:ImageButton> </ItemTemplate> </asp:TemplateColumn> </Columns> <PagerStyle Visible="False"></PagerStyle></asp:datagrid>cs:private void dgList_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e){ if (e.CommandName == "Update") //修改事件 { //设置页面的状态为“修改状态” ViewState["State"] = "EDIT"; //记录ID int iID = Int32.Parse(e.Item.Cells[0].Text); ViewState["ID"] = iID; SMD_GluewaterClingLogic logSMD_GluewaterCling = new SMD_GluewaterClingLogic(); DataGroup dgGluewaterCling = logSMD_GluewaterCling.Select(iID); if ((dgGluewaterCling == null) || (dgGluewaterCling.Table.Rows.Count == 0)) { CommonFiles.CommonFunc.ShowMessage(this, "", "获取数据失败,请稍后再试!"); this.btnCancel_Click(null, null); } else { //日期 this.txtDate.Text = dgGluewaterCling.Table.Rows[0]["InputDate"].ToString(); //班次 this.ddlShift.SelectedIndex = this.ddlShift.Items.IndexOf(this.ddlShift.Items.FindByValue(dgGluewaterCling.Table.Rows[0]["Shift"].ToString())); //Auditor this.txtAuditorNo.Text = dgGluewaterCling.Table.Rows[0]["AuditorNo"].ToString(); this.txtAuditor.Text = dgGluewaterCling.Table.Rows[0]["Auditor"].ToString(); //楼层、拉号 if (this.ddlFloor.Items.Count > 0) { this.ddlFloor.SelectedIndex = this.ddlFloor.Items.IndexOf(this.ddlFloor.Items.FindByValue(dgGluewaterCling.Table.Rows[0]["FloorID"].ToString())); this.BindLine(Int32.Parse(this.ddlFloor.SelectedValue)); this.ddlLine.SelectedIndex = this.ddlLine.Items.IndexOf(this.ddlLine.Items.FindByValue(dgGluewaterCling.Table.Rows[0]["LineID"].ToString())); } //80, 50 this.txtPN80.Text = dgGluewaterCling.Table.Rows[0]["PN80"].ToString(); this.txtPN50.Text = dgGluewaterCling.Table.Rows[0]["PN50"].ToString(); this.txtSeries.Text = dgGluewaterCling.Table.Rows[0]["Series"].ToString(); this.txtModel.Text = dgGluewaterCling.Table.Rows[0]["Model"].ToString(); //测试时间 this.txtTestTime.Text = dgGluewaterCling.Table.Rows[0]["TestTime"].ToString(); //测试物料参数 this.BindTestMaterial(iID); //备注 this.txtRe.Text = dgGluewaterCling.Table.Rows[0]["Re"].ToString(); } } else if (e.CommandName == "Delete") //删除事件 { //得到需要删除的ID int intID = Int32.Parse(e.Item.Cells[0].Text.Trim()); bool blnReturn = new SMD_GluewaterClingLogic().Delete(intID); if (blnReturn) //删除成功 { CommonFiles.CommonFunc.ShowMessage(this, "", "删除胶水附着力检测报表成功!"); //重置页面 this.btnCancel_Click(null, null); //刷新数据 this.PageClick(null, null); } else { CommonFiles.CommonFunc.ShowMessage(this, "", "删除胶水附着力检测报表失败,请重试!"); } }} 真是不好意思,才起来,6点才睡,我没有解决这个问题,所以用曲线救国的方法,在LinkButton中用了Css,大概能用了。散分。 有没有哪位大虾实现了用treeview显示森林的? 关于oo中构造函数和属性的疑问!!! 作图的问题 求助:怎么实现类似Q-ZONE里那样,回复后数据加载进数据库后 提示 保存成功 提供文件下载的按钮,点击后保存的文件名汉字都变成了乱码 邮件群发 "<%# Eval("orderno") 关于等待提示. 升级了,兼发布WebMessageBox控件,散分!! 兄弟们都来说说 关于条件编译,#if DBUG #endif问题 System.Web.Mail发邮件总出现CDO.MESSAGE错误
if(e.CommandName == "设置的值")
{
//..........
}
aspx:
<asp:datagrid id="dgList" runat="server" Width="100%" CssClass="datagrid" AutoGenerateColumns="False"
CellPadding="3" BorderColor="#003366" BackColor="White" AllowSorting="True">
<AlternatingItemStyle BackColor="#EFF5FB"></AlternatingItemStyle>
<ItemStyle HorizontalAlign="Left" BackColor="White"></ItemStyle>
<HeaderStyle Font-Bold="True" HorizontalAlign="Center" ForeColor="White" BackColor="#6699CC"></HeaderStyle>
<Columns>
<asp:BoundColumn Visible="False" DataField="ID" HeaderText="ID"></asp:BoundColumn>
<asp:BoundColumn DataField="InputDate" HeaderText="日期">
<HeaderStyle Width="70px"></HeaderStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="ShiftDesc" HeaderText="班次">
<HeaderStyle Width="60px"></HeaderStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="Auditor" HeaderText="Auditor">
<HeaderStyle Width="60px"></HeaderStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="FloorDesc" HeaderText="楼层">
<HeaderStyle Width="20%"></HeaderStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="LineDesc" HeaderText="拉号">
<HeaderStyle Width="20%"></HeaderStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="Series" HeaderText="系列">
<HeaderStyle Width="25%"></HeaderStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="Model" HeaderText="MODEL">
<HeaderStyle Width="35%"></HeaderStyle>
</asp:BoundColumn>
<asp:BoundColumn DataField="PN80" HeaderText="80 P/N">
<HeaderStyle Width="90px"></HeaderStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:BoundColumn>
<asp:TemplateColumn HeaderText="查看">
<HeaderStyle Width="60px"></HeaderStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
<ItemTemplate>
<IMG id="btnView" style="CURSOR: hand" alt="" src="../../CommonFiles/Images/btnView.gif"
width="54" runat="server">
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="修改">
<HeaderStyle HorizontalAlign="Center" Width="60px"></HeaderStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
<ItemTemplate>
<asp:ImageButton id="btnEdit" runat="server" ImageUrl="../../CommonFiles/Images/btnEdit.gif" CommandName="Update"></asp:ImageButton>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="删除">
<HeaderStyle HorizontalAlign="Center" Width="60px"></HeaderStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
<ItemTemplate>
<asp:ImageButton id="btnDelete" runat="server" ImageUrl="../../CommonFiles/Images/btnDelete.gif"
CommandName="Delete"></asp:ImageButton>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
<PagerStyle Visible="False"></PagerStyle>
</asp:datagrid>cs:
private void dgList_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if (e.CommandName == "Update") //修改事件
{
//设置页面的状态为“修改状态”
ViewState["State"] = "EDIT"; //记录ID
int iID = Int32.Parse(e.Item.Cells[0].Text);
ViewState["ID"] = iID; SMD_GluewaterClingLogic logSMD_GluewaterCling = new SMD_GluewaterClingLogic();
DataGroup dgGluewaterCling = logSMD_GluewaterCling.Select(iID); if ((dgGluewaterCling == null) || (dgGluewaterCling.Table.Rows.Count == 0))
{
CommonFiles.CommonFunc.ShowMessage(this, "", "获取数据失败,请稍后再试!"); this.btnCancel_Click(null, null);
}
else
{ //日期
this.txtDate.Text = dgGluewaterCling.Table.Rows[0]["InputDate"].ToString(); //班次
this.ddlShift.SelectedIndex
= this.ddlShift.Items.IndexOf(this.ddlShift.Items.FindByValue(dgGluewaterCling.Table.Rows[0]["Shift"].ToString())); //Auditor
this.txtAuditorNo.Text = dgGluewaterCling.Table.Rows[0]["AuditorNo"].ToString();
this.txtAuditor.Text = dgGluewaterCling.Table.Rows[0]["Auditor"].ToString(); //楼层、拉号
if (this.ddlFloor.Items.Count > 0)
{
this.ddlFloor.SelectedIndex
= this.ddlFloor.Items.IndexOf(this.ddlFloor.Items.FindByValue(dgGluewaterCling.Table.Rows[0]["FloorID"].ToString())); this.BindLine(Int32.Parse(this.ddlFloor.SelectedValue));
this.ddlLine.SelectedIndex
= this.ddlLine.Items.IndexOf(this.ddlLine.Items.FindByValue(dgGluewaterCling.Table.Rows[0]["LineID"].ToString()));
} //80, 50
this.txtPN80.Text = dgGluewaterCling.Table.Rows[0]["PN80"].ToString();
this.txtPN50.Text = dgGluewaterCling.Table.Rows[0]["PN50"].ToString();
this.txtSeries.Text = dgGluewaterCling.Table.Rows[0]["Series"].ToString();
this.txtModel.Text = dgGluewaterCling.Table.Rows[0]["Model"].ToString(); //测试时间
this.txtTestTime.Text = dgGluewaterCling.Table.Rows[0]["TestTime"].ToString(); //测试物料参数
this.BindTestMaterial(iID); //备注
this.txtRe.Text = dgGluewaterCling.Table.Rows[0]["Re"].ToString();
}
}
else if (e.CommandName == "Delete") //删除事件
{
//得到需要删除的ID
int intID = Int32.Parse(e.Item.Cells[0].Text.Trim()); bool blnReturn = new SMD_GluewaterClingLogic().Delete(intID);
if (blnReturn) //删除成功
{
CommonFiles.CommonFunc.ShowMessage(this, "", "删除胶水附着力检测报表成功!"); //重置页面
this.btnCancel_Click(null, null); //刷新数据
this.PageClick(null, null);
}
else
{
CommonFiles.CommonFunc.ShowMessage(this, "", "删除胶水附着力检测报表失败,请重试!");
}
}
}