请教DataGrid中,ButtonColumn模式下 删除出错问题!!!!

Eddie_chan 2004-11-29 04:08:03
<%@ Import Namespace="System.Data"%>
<%@ Import Namespace="System.Data.SqlClient"%>
<html>
<head>
<meta name="GENERATOR" Content="ASP Express 3.1">
<title>Untitled</title>
<script language="C#" Runat="Server">
//声明表格对象
DataTable Cart;
//声明视图对象
DataView CartView;

protected void Page_Load(object sender, EventArgs e)
{
if(Session["ShoppingCart"]== null)
{
Cart = new DataTable();
Cart.Columns.Add(new DataColumn("物品",typeof(string)));
Session["ShoppingCart"]= Cart;
}
else{
Cart=(DataTable)Session["ShoppingCart"];
}

CartView = new DataView(Cart);
ShoppingCart.DataSource = CartView;
ShoppingCart.DataBind();

if(!IsPostBack){
// 建立数据库
SqlConnection myConnection = new SqlConnection("server=(local);database=Northwind;user id=sa");
//创建SqlAdapter对象
SqlDataAdapter mycmd= new SqlDataAdapter("select * from Categories",myConnection);
//创建DataSet对象
DataSet ds= new DataSet();
//将查询结果填充到DataSet对象中
mycmd.Fill(ds,"Categories");
//将DataGrid的数据源设定为DataSet对象
MyDataGrid.DataSource=ds.Tables["Categories"].DefaultView;
//实现数据绑定
MyDataGrid.DataBind();
}
}

void Grid_CartCommand(Object sender, DataGridCommandEventArgs e)
{
DataRow dr = Cart.NewRow();
//e.Item是被触发的表格的行
TableCell itemCell = e.Item.Cells[1];
string item = itemCell.Text;

//如果被触发的按钮是AddToCart,则添加商品
if(((LinkButton)e.CommandSource).CommandName == "AddToCart")
{
dr[0] = item;
Cart.Rows.Add(dr);
}


『=====出错的地方========』
else{//删除商品
CartView.RowFilter = "物品='"+item+"'"; //『这里提示出错』
if(CartView.Count > 0){
CartView.Delete(0);
}
CartView.RowFilter="";
}
ShoppingCart.DataBind();
}
</script>

</head>
<body>
<h3>test</h>
<form Runat="Server">
<asp:DataGrid ID="MyDataGrid" Runat="Server"
BorderColor="black"
BorderWidth="1"
CellPadding="3"
Font-Name="Verdana"
Font-Size="8pt"
HeaderStyle-BackColor="#aaaadd"
AutoGenerateColumns="false"
OnItemCommand="Grid_CartCommand"
>
<Columns>
<asp:BoundColumn HeaderText="序号" DataField="CategoryID"/>
<asp:BoundColumn HeaderText="名称" DataField="CategoryName"/>
<asp:BoundColumn HeaderText="描述" DataField="Description"/>
<asp:ButtonColumn HeaderText="Add" Text="Add" CommandName="AddToCart"/>
<asp:ButtonColumn HeaderText="Remove" Text="Remove" CommandName="DelFromCart"/>

</Columns>
</asp:DataGrid>
<br>
<asp:DataGrid ID="ShoppingCart" Runat="Server"
BorderColor="Black"
BorderWidth="1"
GridLines="Both"
ShowFooter="False"
CellPadding="3"
CellSpacing="0"
Font-Name="Verdana"
Font-Size="8pt"
HeaderStyle-BackColor="#aaaadd"
/>

</form>
</body>
</html>
...全文
115 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Eddie_chan 2004-12-01
  • 打赏
  • 举报
回复
等待
Eddie_chan 2004-12-01
  • 打赏
  • 举报
回复
继续等待中^.....
supermarrio 2004-11-30
  • 打赏
  • 举报
回复
关注,UP&Remark
Eddie_chan 2004-11-30
  • 打赏
  • 举报
回复
不好意思 昨天太匆忙 忘了
语法错误:“'Beverages'”运算符后缺少操作数。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.SyntaxErrorException: 语法错误:“'Beverages'”运算符后缺少操作数。

源错误:


行 59: }
行 60: else{//删除商品
【行 61: CartView.RowFilter = "物品='"+item+"'";】
行 62: if(CartView.Count > 0){
行 63: CartView.Delete(0);


源文件: c:\inetpub\wwwroot\MyStudy\Mytest\DBGrid_ButtonColumn_test.aspx 行: 61
Eddie_chan 2004-11-30
  • 打赏
  • 举报
回复
语法错误:“'Beverages'”运算符后缺少操作数
注:这里Beverages是数据表里的一个字段,是我选中删除的那条记录
Study_Now 2004-11-29
  • 打赏
  • 举报
回复
呵呵
楼主忘病症啦
keminlau 2004-11-29
  • 打赏
  • 举报
回复
什么错?
conquersky 2004-11-29
  • 打赏
  • 举报
回复
??
活靶子哥哥 2004-11-29
  • 打赏
  • 举报
回复
错误信息?????????

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧