@MGOwen «ctrl» лишен слова «control», и это переменная, которую вы объявляете где угодно для хранения ссылки на объект Control. Поскольку мы говорим о добавлении элемента управления в элементы управления страницы, поэтому объявите элемент управления в любом месте кода перед f .Control.Add (Ctrl) и все готово!

я есть веб-метод, который будет вызываться из jquery ajax:

[WebMethod]
public string TestMethod(string param1, string param2)
{
    StringBuilder b = new StringBuilder();
    HtmlTextWriter h = new HtmlTextWriter(new StringWriter(b));
    this.LoadControl("~/Pages/Controls/Listing.ascx").RenderControl(h);
    string controlAsString = b.ToString();
    return controlAsString;
}

(это нестатический метод, и мы можем поразить его. Это не проблема)

Когда метод loadControl () выполняется, я получаю сообщение об ошибке: RegisterForEventValidation может быть вызван только во время Render.

Я уже включил EnableEventValidation = "false" для текущего aspx, также отключил viewstate. но все равно я получаю ту же ошибку. Есть идеи по этому поводу?

Ответы на вопрос(2)

Ваш ответ на вопрос