怎么可能,应该是可以的,给你看看我的代码
<asp:TemplateColumn>
<HeaderStyle Width="5%"></HeaderStyle>
<ItemTemplate>
<asp:LinkButton id="btnDel" runat="server" CommandName="Delete">删除</asp:LinkButton>
</ItemTemplate>
</asp:TemplateColumn>private void grdPrice_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
Line objLine = new Line();
string PrcID=e.Item.Cells[0].Text.ToString().Trim();
string LineID=Page.Request.QueryString.Get("LineID"); //删除线路价格
if((!objLine.DelPrice(PrcID))&&(!objLine.ErrorMessage.Equals("")))
{
//MessageBox(objLine.ErrorMessage);
}
else
{
GetPriceData(LineID);
//页面刷新
//Page.Response.Redirect(Page.Request.Url.ToString());
}
}

解决方案 »

  1.   

    我刚刚看到你的留言
    现在你可以给我看看你的code了。我在线,这会儿我有空!
      

  2.   

    或者你看看你的模版列用的都是同一个commandName,
    try use other command
      

  3.   

    我仔细看了一下,问题出在你实用的模版列上面,
    <asp:TemplateColumn HeaderText="操  作">
    <ItemTemplate>
    <asp:Button id="SelMID" Runat="server" CommandName="SelMiD" Text="修改"></asp:Button>&nbsp;&nbsp;
    <asp:Button id="SelDel" Runat="server" CommandName="SelDelete" Text="删除"></asp:Button>
    </ItemTemplate>
    </asp:TemplateColumn> 
    你在一个列里面用了两个button,我想你把拆分成两列,应该就没有问题了,并且,不要用相同的CommcadName,应为程序可能无法识别,到底是那个按钮列触发的事件。用下面的试试看!
    <asp:TemplateColumn >
    <ItemTemplate>
    <asp:Button id="btnEdit" Runat="server" CommandName="EditMid" Text="修改"></asp:Button>
    </ItemTemplate>
    </asp:TemplateColumn> 
    <asp:TemplateColumn >
    <ItemTemplate>
    <asp:Button id="btnDel" Runat="server" CommandName="Del" Text="删除"></asp:Button>
    </ItemTemplate>
    </asp:TemplateColumn> -----------------------------------------------------------
    另外,操作列一般不用HeaderText,会很丑的!~
      

  4.   

    cocainy((Kony)) 说的很有道理。不过也可以用另外一种方法:<asp:Button id="SelDel" Runat="server" CommandName="SelDelete" Text="删除"></asp:Button>
    里面有个onCommand的函数,添加进去,让它指向一个函数Command()。
    在.cs文件里,写出该函数:DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
    {
       if(e.CommandName == "SelDelete")
       ......
    }
      

  5.   

    应该是CommandName="SelDelete"重名的问题
      

  6.   

    这个问题解决了!是我大意,没有在Page_Load里加上if(!IsPostBack) 所以不行!!!