C# 从c中的另一个函数调用函数
我有一个按钮点击事件,它将注释文本从文本框插入数据库。现在我需要调用一个函数,在点击插入注释按钮的点击事件后显示注释。下面是代码 使用此代码,我将文本插入数据库C# 从c中的另一个函数调用函数,c#,asp.net,C#,Asp.net,我有一个按钮点击事件,它将注释文本从文本框插入数据库。现在我需要调用一个函数,在点击插入注释按钮的点击事件后显示注释。下面是代码 使用此代码,我将文本插入数据库 protected void cmt_Click(object sender, EventArgs e) { //DateTime.Now.ToString(); Button btn = (Button)sender; DataListItem dli = (DataListItem)btn.NamingC
protected void cmt_Click(object sender, EventArgs e)
{
//DateTime.Now.ToString();
Button btn = (Button)sender;
DataListItem dli = (DataListItem)btn.NamingContainer;
TextBox tx = (TextBox)dli.FindControl("tb_cmt");
Label lb = (Label)dli.FindControl("lbl_sid");
string userid = Session["userid"].ToString();
sq.connection();
SqlCommand cmd = new SqlCommand("insert into comment(ecomment,sid,my_date,reg_id) values(@myecomment,@mysid,@mydate,@reg_id)", sq.con);
cmd.Parameters.AddWithValue("@myecomment", tx.Text);
cmd.Parameters.AddWithValue("@mysid", lb.Text);
cmd.Parameters.AddWithValue("@mydate", DateTime.Now.ToString("h:mm, MMM dd, yyyy"));
cmd.Parameters.AddWithValue("@reg_id", userid);
cmd.ExecuteNonQuery();
sq.con.Dispose();
sq.con.Close();
tx.Text = "";
//bind_dlcmt( 1 );
}
下面是显示来自数据库的注释的代码
public void showdata()
{
string str = gstr;
sq.connection();
SqlCommand cmd = new SqlCommand("select * from sub_catTbl where sid='" + str + "' ", sq.con);
//SqlCommand cmd = new SqlCommand("select * from sub_catTbl", sq.con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
da.Fill(dt);
mydatalist.DataSource = dt;
mydatalist.DataBind();
sq.con.Dispose();
sq.con.Close();
foreach (DataListItem dli in mydatalist.Items)
{
bind_dlcmt(dli.ItemIndex);
//blin_dlcmt();
}
}
public void bind_dlcmt(int itm_indx)
{
string str = gstr;
//int sid = Convert.ToInt32(mydatalist.DataKeys[itm_indx]);
sq.connection();
SqlCommand cmd = new SqlCommand("select top 4 * from comment where sid='" + str + "' order by my_date desc", sq.con);
//SqlCommand cmd = new SqlCommand("select * from comment where sid=@sid ", sq.con);
//cmd.Parameters.AddWithValue("@sid", sid);
SqlDataReader sdr = cmd.ExecuteReader();
DataList dl = (DataList)mydatalist.Items[itm_indx].FindControl("dl_cmt");
dl.DataSource = sdr;
dl.DataBind();
}
我需要调用cmt\u Click button Click事件最后一行中的函数binddlcmt。由于函数中有一个参数,我不确定如何调用该函数。那么您想知道如何在button Click事件处理程序中获取项索引吗 使用:
MVC通知控制器一个数据更改,然后触发GUI更新,这不是更好吗?为什么您认为OP使用的是MVCV?这是普通的ASP.NET,OP正在尝试将DataListView的DataListItem的索引传递给服务器上的另一个方法。。。好的,忘了我的评论。@TimSchmelter当我调用bind_dlcmt时,它应该显示刚刚插入的更新数据,但是..当我单击按钮时,什么也不显示。@sum1:恐怕我不理解问题的原因。也许你应该澄清你的问题,这样其他人可以帮助你。
protected void cmt_Click(object sender, EventArgs e)
{
Button btn = (Button)sender;
DataListItem dli = (DataListItem)btn.NamingContainer;
// ...
bind_dlcmt( dli.ItemIndex );
}