Привязки данных Asp.net теряются после обратной передачи - PullRequest
1 голос
/ 06 мая 2009

Привет всем, у меня есть следующая проблема, которая действительно сводит меня с ума.

После выполнения какой-либо обратной передачи несколько элементов управления не перепривязывают себя, например

DetailsView с подключенным ObjectDataSource (в моем случае ObjectContainerDataSource) LoginView не показывает LoggedInTemplate, но LoginStatus показывает, что я вошел в систему.

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

Заранее спасибо

Ответы [ 3 ]

2 голосов
/ 23 августа 2013

Если привязка выполняется в методе Page_Load, убедитесь, что она находится внутри цикла обратной передачи if not.

if (!IsPostBack)
    {
        //Your code to bind data
    }

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

1 голос
/ 06 мая 2009

Не видя никакого реального кода, я бы посоветовал вам взглянуть на настройки EnableViewState для страницы и отдельных элементов управления.

Это хорошая статья о управлении viewstate .

Вы также должны искать код в разделе, подобном этому, в вашей page_load ()

if(!IsPostback)
{
    // code to bind some of your controls
} 

Этот код будет вызываться только при первом входе на страницу, но не при обратной передаче. Если вы покинете страницу и вернетесь, код привязки снова запустится.

0 голосов
/ 06 мая 2009

Ваша привязка данных происходит в событии page_load? Если нет, перепривязываете ли вы страницу после перезагрузки?

Ваши элементы управления загружаются динамически?

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