簡體   English   中英

如何訪問中繼器在垂直行的標簽控制

[英]how to access label control in repeater for perticular row

我必須在中繼器中將標簽可見性設置為true或false。 我必須在linkbutton的onclick事件上訪問該標簽。 標簽和鏈接按鈕都在中繼器中。 因此,當我單擊“隱藏鏈接”按鈕時,我必須隱藏標簽,而在單擊“顯示”時,我必須顯示。但是我沒有獲得該垂直標簽的控制權。 linkbutton的onclick事件僅應更改垂直行。

 protected void lnkshow_onclick(object sender, EventArgs e)
    {
        LinkButton lnkshow = (LinkButton)sender;
        //RepeaterItemCollection rc = rList.Items;
        int intSOid=Convert.ToInt32(lnkshow.CommandArgument);

    // update flag into database as hide or show
    string flag = ARIData.updateIntoInvoiceItemsTable(intSOid);
    if (flag == "Y")
    {
        lnkshow.Text = "Show";
    }
    else
    {
        lnkshow.Text = "Hide";
    }
    RepeaterItemCollection rc = rList.Items;

    Label lbreakdown = default(Label);
    foreach (RepeaterItem Item in rc)
    {
        lbreakdown = (Label)Item.FindControl("lBreakdown");
        if (flag == "Y")
        {
            lbreakdown.Visible = false;
        }
        else
        {
            lbreakdown.Visible = true;
        }

    }



}

此代碼更改整個行。

您可以將LinkButtonNamingContainer LinkButton轉換為RepeaterItem ,然后就可以使用FindControl標簽:

LinkButton lnkshow = (LinkButton)sender;
int intSOid = Convert.ToInt32(lnkshow.CommandArgument);
string flag = ARIData.updateIntoInvoiceItemsTable(intSOid);

RepeaterItem item = (RepeaterItem) lnkshow;
Label lbreakdown = (Label) item.FindControl("lbreakdown");
lbreakdown.Visible = flag != "Y"

您最好使用轉發器的Item Command事件。 然后,您可以使用以下代碼從轉發器項目中獲取控件:

int intSOid=Convert.ToInt32(lnkshow.CommandArgument);
// update flag into database as hide or show
string flag = ARIData.updateIntoInvoiceItemsTable(intSOid);

RepeaterItem item = (RepeaterItem)((Control)e.CommandSource).NamingContainer;
LinkButton lnkshow = (LinkButton)item.FindControl("lnkshow");
Label lbreakdown = (Label)item.FindControl("lBreakdown");

lnkshow.Text =  flag == "Y" ? "Show" : "Hide";
lbreakdown.Visible = flag != "Y";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM