Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Web, ASP.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
tapinam
21 / 21 / 9
Регистрация: 26.07.2013
Сообщений: 109
1

Сохранение и загрузка элементов управления

06.08.2013, 11:12. Просмотров 740. Ответов 10
Метки нет (Все метки)

Всем привет.
Народ, посоветуйте, пожалуйста, лучший(на ваш взгляд) вариант сохранения и загрузки контролов на странице.

Добавлено через 34 минуты
Забыл добавить, на странице будут разные пользователи, состояние должно оставаться одинаковым для всех, потому Session отпадает сразу.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.08.2013, 11:12
Ответы с готовыми решениями:

Сохранение и загрузка настроек
Всем привет :) Поскольку программа планирует использовать "ежедневник с...

Сохранение и загрузка файла из ресурсов
Нужна помощь! У меня есть проект с формами(ListBox, TextBox, Button 3х), и мне...

Сохранение и быстрая загрузка данных dataGrid
По введенным в textbox начальному значению, программа производит расчеты и...

Выравнивание элементов управления
Всем привет. Как это сделать? У меня есть три формы текст бокс. Разместил на...

Группировка элементов управления
Есть какой-нибудь элемент в ASP.NET с помощью которого можно было бы...

10
Moonshine
43 / 43 / 7
Регистрация: 09.10.2012
Сообщений: 147
06.08.2013, 11:57 2
А что имеется в виду под
сохранения и загрузки контролов
Если какие-то данные должны сохраняться для всех, то обычно используют БД или HttpContext.Current.Cache для всякой мелочи.
0
tapinam
21 / 21 / 9
Регистрация: 26.07.2013
Сообщений: 109
06.08.2013, 12:26  [ТС] 3
Цитата Сообщение от Moonshine Посмотреть сообщение
А что имеется в виду под

Если какие-то данные должны сохраняться для всех, то обычно используют БД или HttpContext.Current.Cache для всякой мелочи.
У меня есть несколько кнопок на панели, которая на контентхолдере. К кнопкам привязаны некоторые данные в базе.
При перезагрузке страницы, кнопки должны остаться видимыми (по дефолту должны быть .visible = false) и со значениями, которые были до закрытия страницы.
0
Moonshine
43 / 43 / 7
Регистрация: 09.10.2012
Сообщений: 147
06.08.2013, 21:36 4
А как вы к кнопкам привязываете данные? Как вы устанавливаете Visible? Вы должны понимать порядок загрузки страницы. Сначала происходит вызов Page_Load потом обработчики ваших событий Button1_Click. Может вы в Page_Load стираете?
Например текст введённый в текстбокс пользователем сохраняется после Postback.
Так, что ищите где вы в обработчиках переустанавливаете значения.
0
tapinam
21 / 21 / 9
Регистрация: 26.07.2013
Сообщений: 109
07.08.2013, 09:53  [ТС] 5
Цитата Сообщение от Moonshine Посмотреть сообщение
А как вы к кнопкам привязываете данные? Как вы устанавливаете Visible? Вы должны понимать порядок загрузки страницы. Сначала происходит вызов Page_Load потом обработчики ваших событий Button1_Click. Может вы в Page_Load стираете?
Например текст введённый в текстбокс пользователем сохраняется после Postback.
Так, что ищите где вы в обработчиках переустанавливаете значения.
Я это понимаю. Мне просто хотелось услышать совет как лучше сохранять и загружать, т.к. в сети разные варианты.
Обработчики не важны в данном случае для меня. Сделал функцию, закинул её в page_load(). В функции беру айди из базы, проверяю активен ли был этот айди при закрытии страницы (поле в базе), если активен, тогда присваиваю кнопкам и делаю их видимыми, всё. Возможно это не самый лучший вариант, но он работает и ошибок я пока что не заметил.
0
Moonshine
43 / 43 / 7
Регистрация: 09.10.2012
Сообщений: 147
07.08.2013, 10:28 6
Обработчики не важны в данном случае для меня
Как же они не важные если Page_load и есть обработчик загрузки и вы сами говорите, что в нём устанавливается каждый раз значение. Вот вы сами и стираете.

Лучший вариант здесь, я думаю, это в Page_load весь код поместить в
C#
1
2
3
4
5
if (!IsPostback)
{
... загрузка из бд...
}
... но Visible надо ставить всё равно тут
Вы пользуйтесь отладкой, и построчно следите как код выполняется. Тогда не будет вопросов почему в результате так получилось.
0
tapinam
21 / 21 / 9
Регистрация: 26.07.2013
Сообщений: 109
07.08.2013, 11:17  [ТС] 7
Цитата Сообщение от Moonshine Посмотреть сообщение
Как же они не важные если Page_load и есть обработчик загрузки и вы сами говорите, что в нём устанавливается каждый раз значение. Вот вы сами и стираете.

Лучший вариант здесь, я думаю, это в Page_load весь код поместить в
C#
1
2
3
4
5
if (!IsPostback)
{
... загрузка из бд...
}
... но Visible надо ставить всё равно тут
Вы пользуйтесь отладкой, и построчно следите как код выполняется. Тогда не будет вопросов почему в результате так получилось.
Стоп, я понимаю, что Page_load это обработчик. Я имел ввиду, что обработчики кнопок мне не важны.
Мне нужно, чтобы при открытии страницы были видны нужные кнопки, так и происходит.

Добавлено через 3 минуты
Цитата Сообщение от Moonshine Посмотреть сообщение
Может вы в Page_Load стираете?
Например текст введённый в текстбокс пользователем сохраняется после Postback.
После PostBack оно остаётся, где нужно. Мне требовалось, чтобы они становились видимыми после открытия страницы.
0
Moonshine
43 / 43 / 7
Регистрация: 09.10.2012
Сообщений: 147
07.08.2013, 11:23 8
Пишите нужную логику в Page_Load. Используйте IsPostback
0
tapinam
21 / 21 / 9
Регистрация: 26.07.2013
Сообщений: 109
07.08.2013, 12:40  [ТС] 9
Цитата Сообщение от Moonshine Посмотреть сообщение
Пишите нужную логику в Page_Load. Используйте IsPostback
Что Вы имеете в виду? Может быть, у меня просто опыта не хватает и потому я немного не понимаю.
У меня Page_load выглядит так:

C#
1
2
3
4
5
6
7
8
protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        UnitsLoad();
        LoadSavedProducts(); //моя функция отображения кнопок
    }
}
Если поможете с логикой, то буду только рад.
0
Moonshine
43 / 43 / 7
Регистрация: 09.10.2012
Сообщений: 147
07.08.2013, 14:17 10
Ну значит вы уже всё написали. Если результат отличается от того, что вы ожидаете. нажмите F9 и выделите начальную строку каждого вашего метода на странице и запустите сайт для отладки. F10 - переход к след строке.

Пройдите таким образом выполнение всех своих методов и следите за значениями переменных. В чём конкретно возникает неожиданный результат? Потом напишите о своих результатах, приведите примеры кода.
1
tapinam
21 / 21 / 9
Регистрация: 26.07.2013
Сообщений: 109
07.08.2013, 15:08  [ТС] 11
Цитата Сообщение от Moonshine Посмотреть сообщение
Ну значит вы уже всё написали. Если результат отличается от того, что вы ожидаете. нажмите F9 и выделите начальную строку каждого вашего метода на странице и запустите сайт для отладки. F10 - переход к след строке.

Пройдите таким образом выполнение всех своих методов и следите за значениями переменных. В чём конкретно возникает неожиданный результат? Потом напишите о своих результатах, приведите примеры кода.
Так у меня нет никаких проблем, всё сделано, всё работает
Спасибо.
0
07.08.2013, 15:08
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.08.2013, 15:08

Стилизация элементов управления Asp
Добрый день! Как можно стилизовать элементы управления asp.net? Спасибо!

Целесообразность серверных элементов управления
Добрый день. Вопрос к людям, длительное время пишущим с помощью asp(.net или...

Расположение элементов управления на web формах
Всем привет. Не могу понять это так задумано. Почему я не могу расположить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru