我如何在页面加载事件中调用它? [英] how can i call this in page load event?

查看:93
本文介绍了我如何在页面加载事件中调用它?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

//这是我的代码,我做了一些计算,我希望它在页面//加载时运行。我该怎么办...

//this is my code where i have done some calculations and i want it to be run at the time of page //load. how can i do that...

protected void gvUserInfo_ItemCommand(object sender, ListViewCommandEventArgs e)
{
    DataTable dt = new DataTable();
    dt.Columns.Add("sponcorid", typeof(string));
    dt.Columns.Add("leftcount", typeof(int));
    dt.Columns.Add("rightcount", typeof(int));
    dt.Columns.Add("totcount", typeof(int));
    dt.Columns.Add("pair", typeof(int));
    dt.Columns.Add("tot_comission", typeof(float));
    dt.Columns.Add("paid_comission", typeof(float));
    dt.Columns.Add("unpaid_comission", typeof(float));
    //DataRow dr = dt.NewRow();

    Label sponcorid = (Label)e.Item.FindControl("lblsponcorid");
    Label leftcount = (Label)e.Item.FindControl("lblleft");
    Label rightcount = (Label)e.Item.FindControl("lblright");
    Label totcount = (Label)e.Item.FindControl("lbltotcount");
    Label pair = (Label)e.Item.FindControl("lblpair");
    Label tot_comission = (Label)e.Item.FindControl("lbltot_comission");
    Label paid_comission = (Label)e.Item.FindControl("lblpaid_comission");
    Label unpaid_comission = (Label)e.Item.FindControl("lblunpaid_comission");
    double total = Convert.ToInt32(pair.Text.ToString()) * 500;
    tot_comission.Text =total.ToString();

    Label9.Text = sponcorid.Text.ToString();
    Label8.Text = leftcount.Text.ToString();
    Label10.Text = rightcount.Text.ToString();
    Label11.Text = totcount.Text.ToString();
    Label12.Text = pair.Text.ToString();
    Label13.Text = tot_comission.Text.ToString();
    Label15.Text = paid_comission.Text.ToString();
    Label16.Text = unpaid_comission.Text.ToString();

    TMObj.sponcorid = sponcorid.Text.ToString();
    TMObj.leftcount = leftcount.Text.ToString();
    TMObj.rightcount = rightcount.Text.ToString();
    TMObj.totcount = totcount.Text.ToString();
    TMObj.pair = pair.Text.ToString();
    TMObj.tot_comission = tot_comission.ToString();
    TMObj.paid_comission = paid_comission.ToString();
    TMObj.unpaid_comission = unpaid_comission.ToString();

    dt = DAL.TestCounter_Master.ViewData(TMObj);

    GridView2.DataSource = dt;
    GridView2.DataBind();
    MultiView1.ActiveViewIndex = 3;


}

推荐答案

protected void btnReport_Click(object sender, EventArgs e)
{
    gvUserInfo_ItemCommand(sender, e);
}


页面加载事件是页面生命周期事件的一部分。你不能解雇那个事件。 ASP.net框架在请求来到WebForm(页面)时执行。您可以调用Page Load事件处理程序,如
Page load event is a part of Page lifecycle event. You can not fire that event. ASP.net framework do it when request come to WebForm(page). You can call Page Load event handler like
Page_Load(null, EventArgs.Empty);



但不推荐这种做法。您可以编写一个通用函数/辅助方法,您希望从2个或更多不同的事件处理程序调用/执行。


But it is not recommended approach. You can write a common function/helper method which you want to call/execute from 2 or more different event handlers.


您可以将此代码定位到方法中并在需要时调用它!在gvUserInfo_ItemCommand和Page_Load中!

另一种方式是你这样调用这个事件:

you can locate this codes into a method and invoke it when you need it! in gvUserInfo_ItemCommand and in Page_Load !
another way is you call this event like this :
ListViewCommandEventArgs l = new ListViewCommandEventArgs(
           new ListViewItem(ListViewItemType.InsertItem),
           listview1,
           new CommandEventArgs("command name",listview1));
gvUserInfo_ItemCommand(sender, l);


这篇关于我如何在页面加载事件中调用它?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆