你能在 c# 中将 findcontrol 与 Ajax 手风琴一起使用吗?
本文关键字:一起 手风琴 Ajax 中将 findcontrol | 更新日期: 2023-09-27 18:34:05
这与我提出的另一个问题有关,我的母版页上有一个下拉列表,该下拉列表在更改时会导致回发,在该索引更改方法中,我正在尝试找到我的ajax手风琴以查看其所选索引
protected void ddlSelectedCustomer_SelectedIndexChanged(object sender, EventArgs e)
{
CustomerSelected();
Response.AppendHeader("Refresh", "0;URL=storefront.aspx");
ViewState["SelectedAccordionIndex"] = (AjaxControlToolkit.Accordion)FindControl("MyAccordion").SelectedIndex;
}
我收到的错误
对象引用未设置为对象的实例。
问题是FindControl返回一个对象。将其投射到手风琴上,然后重试:ViewState["SelectedAccordionIndex"] = ((Accordion)FindControl("MyAccordion")).SelectedIndex;
如果这不是为什么您可能需要更深入地钻探,例如 ((Accordion)this.FindControl(<the id of your content placeholder your accordion is in>).FindControl("MyAccordion")).SelectedIndex;
您应该能够像使用任何其他 ASP 控件一样使用它。如上所述,它作为 Object 返回,因此您必须将其转换为您正在使用的任何控件,无论是下拉列表、列表框还是在本例中为 ajax 手风琴