前台: <asp:DataList ID="DataList1" runat="server" onDeleteCommand="DataList1_DeleteCommand" DataKeyField="taskID" >
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"TaskLeader") %>'> </asp:Label>
<asp:Button ID="Button1" runat="server" Text="Button" commandName="delete" />
</ItemTemplate>
</asp:DataList>
后台:
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{ BindDataList();
} private void DataList1_DeleteCommand(object source, DataListCommandEventArgs e)
{ string connString = "Data Source=.;Initial Catalog=MyPMDB;User ID=sa;Password=123456";
SqlConnection cn = new SqlConnection(connString);
string strDelete = "delete from task Where taskid = @iD ";
SqlCommand cmd = new SqlCommand(strDelete, cn);
cmd.Parameters.Add("@id ", SqlDbType.VarChar).Value =
DataList1.DataKeys[e.Item.ItemIndex].ToString(); //记得设置DataList1的DataKeyField为主键
cn.Open();
cmd.ExecuteNonQuery();
cn.Close();
DataList1.SelectedIndex = -1;
BindDataList();//重新绑定数据
} private void BindDataList()//datalist1数据绑定
{
string connString = "Data Source=.;Initial Catalog=MyPMDB;User ID=sa;Password=123456";
// string commandText = "SELECT * FROM TASK WHERE ProID=@ProID";
string commandText = "SELECT taskID,taskName, DATEDIFF(dd,deline,getdate())as deline,taskLeader FROM TASK ";
SqlConnection conn = new SqlConnection(connString); SqlCommand command = new SqlCommand(commandText, conn);
// command.Parameters.Add("@ProID", SqlDbType.Int);
// command.Parameters["@ProID"].Value = proID;
DataSet ds = new DataSet();
conn.Open();
SqlDataAdapter sqlDa = new SqlDataAdapter(command);
sqlDa.Fill(ds);
conn.Close();
conn.Dispose();
this.DataList1.DataSource = ds;
this.DataList1.DataBind();
}编译器错误消息: CS1061: “ASP.webform1_aspx”不包含“DataList1_DeleteCommand”的定义,并且找不到可接受类型为“ASP.webform1_aspx”的第一个参数的扩展方法“DataList1_DeleteCommand”(是否缺少 using 指令或程序集引用?)错误代码指示段为: <asp:DataList ID="DataList1" runat="server" onDeleteCommand="DataList1_DeleteCommand"
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"TaskLeader") %>'> </asp:Label>
<asp:Button ID="Button1" runat="server" Text="Button" commandName="delete" />
</ItemTemplate>
</asp:DataList>
后台:
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{ BindDataList();
} private void DataList1_DeleteCommand(object source, DataListCommandEventArgs e)
{ string connString = "Data Source=.;Initial Catalog=MyPMDB;User ID=sa;Password=123456";
SqlConnection cn = new SqlConnection(connString);
string strDelete = "delete from task Where taskid = @iD ";
SqlCommand cmd = new SqlCommand(strDelete, cn);
cmd.Parameters.Add("@id ", SqlDbType.VarChar).Value =
DataList1.DataKeys[e.Item.ItemIndex].ToString(); //记得设置DataList1的DataKeyField为主键
cn.Open();
cmd.ExecuteNonQuery();
cn.Close();
DataList1.SelectedIndex = -1;
BindDataList();//重新绑定数据
} private void BindDataList()//datalist1数据绑定
{
string connString = "Data Source=.;Initial Catalog=MyPMDB;User ID=sa;Password=123456";
// string commandText = "SELECT * FROM TASK WHERE ProID=@ProID";
string commandText = "SELECT taskID,taskName, DATEDIFF(dd,deline,getdate())as deline,taskLeader FROM TASK ";
SqlConnection conn = new SqlConnection(connString); SqlCommand command = new SqlCommand(commandText, conn);
// command.Parameters.Add("@ProID", SqlDbType.Int);
// command.Parameters["@ProID"].Value = proID;
DataSet ds = new DataSet();
conn.Open();
SqlDataAdapter sqlDa = new SqlDataAdapter(command);
sqlDa.Fill(ds);
conn.Close();
conn.Dispose();
this.DataList1.DataSource = ds;
this.DataList1.DataBind();
}编译器错误消息: CS1061: “ASP.webform1_aspx”不包含“DataList1_DeleteCommand”的定义,并且找不到可接受类型为“ASP.webform1_aspx”的第一个参数的扩展方法“DataList1_DeleteCommand”(是否缺少 using 指令或程序集引用?)错误代码指示段为: <asp:DataList ID="DataList1" runat="server" onDeleteCommand="DataList1_DeleteCommand"
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货