Поместите строку Print в цикл следующим образом: -
for(int i = 1; i<=value-1; i++)
{
table[i] = num*i;
System.out.println(table[i])
}
Значение '[I @ 3d494fbf', которое печатает ваша программа, - это путь памяти массива 'table'.
Вы не можете включить состояние отображения на управлении, которое является в рамках другого управления, которому отключили состояние отображения.
Ваша единственная опция состоит в том, чтобы включить его для внешнего управления и затем выключить его для всех средств управления в нем, за исключением управления, Вам нужно состояние отображения.
Свойство EnableViewState на любом контейнере переопределит поведение всех средств управления в этом containter.
Удачи!
Править: Можно хотеть посмотреть CreateChildContols () метод и перечислить средства управления, запрещающие состояние отображения оттуда для каждых из средств управления в пользовательском элементе управления с помощью свойства EnableViewState.
Если Вы - счастливые данные помещения в ViewState вручную (вместо того, чтобы позволить ASP.NET сохранить уровень Вашего контроля для Вас), Вы могли поместить объекты непосредственно в ViewState страницы, а не ViewState Вашего управления.
Т.е. вместо высказывания:
this.ViewState["someKey"] = someValue;
скажите:
this.Page.ViewState["someKey"] = someValue;
Будьте осторожны, хотя - если у Вас есть больше чем один экземпляр Вашего управления на странице, необходимо будет удостовериться, что они используют различные ключи!