Я использую C #, .NET 3.5. У меня есть элемент управления GridView с динамически связанным DataSource, и я динамически устанавливаю PageSize в обработчике событий Page_Load. Я установил AllowPaging = true на элементе управления.
Пейджинг GridView работает нормально, однако размер страницы, заданный в Page_Load, не вступает в силу при первой загрузке страницы. При первой загрузке страницы она всегда будет отображать 10 строк независимо от установленного мной свойства GridView.PageSize (5, 15 и т. Д.). После 1-го раза (постбэк) размер страницы вступает в силу, и все работает как положено.
Размер страницы - это свойство главной страницы, которое я получаю из файла web.Config в appsettings.
Я не уверен, почему размер страницы gridView не вступает в силу с 1-го раза. Должен ли я устанавливать размер страницы в другом событии, кроме Page_Load. Кроме того, я устанавливаю это всегда, даже если это постбэк. Я запускаю страницу, используя внутренний веб-сервер. Есть идеи, что происходит?
код позади (GridView1.AllowPaging = true на странице aspx):
protected void Page_Load(object sender, System.EventArgs e)
{
DataView dvMembers = GetMembers;
GridView1.DataSource = dvMembers;
GridView1.PageSize = Master.GridViewSize;
}
Свойство главной страницы:
public int GridViewSize
{
get { return Convert.ToInt32
(ConfigurationManager.AppSettings ["memberDataGridPageSize"]); }
}