Как сохранить таблицу видимой в ASP. NET при просмотре календаря - PullRequest
1 голос
/ 23 января 2020

Я столкнулся с проблемой при работе на нашем ASP. NET веб-сайте:

У меня была скрытая таблица, пока не была нажата указанная кнопка. Как только эта кнопка была нажата, таблица - вместе с ее содержимым - будет видна с этой точки. Одним из содержимого этой таблицы является календарь. Проблема в том, что всякий раз, когда я переключаю год в Календаре, таблица возвращается в свое скрытое состояние.

Я распознал это, потому что поместил свойство table_Name.visible = false; в Page_load

protected void Page_Load(object sender, EventArgs e)
{
   my_Table_name.Visible = false;
}

Я попытался исправить это, поэтому мое первое решение было таким:

int counter = 0;
protected void Page_Load(object sender, EventArgs e)
{
    if (counter == 0)
    {
        additional_Tabe.Visible = false;
        counter += 1;
    }
}

Мое решение не сработало.

  • Мое второе решение - регулярное выражение
  • Мое третье решение заключается в использовании раскрывающихся списков для индивидуального представления Месяца / Дня / Года

Проблема с моим вторым и третьим решением состоит в том, что мне придется заменить весь Календарь, который есть у моих одногруппников. с одним из моих решений, что довольно утомительно, но выполнимо.

Мне просто интересно, есть ли способ предотвратить возврат таблицы в скрытое состояние, пока пользователь переключает год Календарь, выберите дату или, как правило, поиграйтесь с Календарем.

Ответы [ 2 ]

0 голосов
/ 23 января 2020

Используя свойство Page.IsPostBack внутри Page_Load, https://docs.microsoft.com/en-us/dotnet/api/system.web.ui.page.ispostback?view=netframework-4.8 it returns true if: the page is being loaded in response to a client postback; otherwise, false. Вы можете обернуть ваш my_Table_name.Visible = false; в это условие и установить его в значение false, только если это обратный вызов

Код:

protected void Page_Load(object sender, EventArgs e)
{
    if(IsPostBack)
       my_Table_name.Visible = false;
}
0 голосов
/ 23 января 2020
 int counter = 0;
protected void Page_Load(object sender, EventArgs e)
{
      if(!PostBack)
      {

              if (counter == 0)
              {
                   additional_Tabe.Visible = false;
                   counter += 1;

              }
       }

}

Использовал этот код ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...