Обновление Повторителя управляет в UpdatePanel с ASP.NET

Еще один пример прямого кода:

int  n = 0;
if (a) n++;
if (b) n++;
if (c) n++;
return (n >= 2);

Это не самый лаконичный код, очевидно.

Приложение

Еще одна (слегка оптимизированная) версия этого:

int  n = -2;
if (a) n++;
if (b) n++;
if (c) n++;
return (n >= 0);

Это может выполняться немного быстрее, предполагая, что сравнение с 0 будет использовать быстрее ( или, возможно, меньше) кода, чем сравнение с 2.

6
задан Astaar 14 July 2009 в 11:40
поделиться

3 ответа

Вы должны привязать DataBind в Page_Load внутри! IsPostBack, как и вы. Вы должны ТАКЖЕ привязать данные к вашему событию Click.

    protected void Page_Load(object sender, EventArgs e)
    {
        if(!IsPostBack)
        {
            this.DataBind();
        }
    }
    protected void MyButton_Click(object sender, EventArgs e)
    {
        //Code to do stuff here...

        //Re DataBind
        this.DataBind();
    }
    public override void DataBind()
    {
        //Databinding logic here
    }
2
ответ дан 17 December 2019 в 20:34
поделиться

Вместо того, чтобы делать ваш источник данных MySqlDataReader, пусть ваш читатель заполнит BindingList или что-то в этом роде. Держите это в сеансе и выполняйте привязку данных каждый раз, когда не выполняется обратная передача, и нажимайте. Когда ваш пользователь публикует сообщения, вы можете добавить его в список и подождать, пока что-нибудь скажет ему, чтобы сохранить это, но в контексте публикации комментариев имеет смысл сохранить их сообщение в вашей базе данных, повторить свой набор данных и наступить на него. BindingList и повторное связывание данных.

Кроме того, личное раздражение: мне не нравится <% # Eval ....%>. Код на вашей странице - обычно плохой знак. Попробуйте использовать событие Repeater.ItemDataBound http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.repeater.itemdatabound.aspx

0
ответ дан 17 December 2019 в 20:34
поделиться

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

0
ответ дан 17 December 2019 в 20:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: