показать popupcontrol в событии rowupdating devexpress gridview, если определенный критерий не выполняется - PullRequest
0 голосов
/ 05 марта 2011

У меня есть Devexpress Gridview, где отображается элемент и его цена.

Редактирование включено.

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

если это так, я отменяю редактирование с помощью

e.Cancel = true;
 ASPxGridView1.CancelEdit();

. Следующее, что я хочу, это вызвать всплывающее окно aspx, запрашивающее переопределение пароля, чтобы выполнить большее количество в событии rowupdating.*

popcontrol будет содержать текстовое поле с паролем и кнопку. Остальные процедуры будут выполняться с помощью функции нажатия кнопки

даже если я вызвал popcontrol

 ASPxPopupControl2.ShowOnPageLoad = true;

, поп не имеетпоказать ...... почему это так ..

вот мой общий код ..

 protected void ASPxGridView1_RowUpdating(object sender, DevExpress.Web.Data.ASPxDataUpdatingEventArgs e)
{
    string msg;

    double new_amt = double.Parse(e.NewValues["Amount"].ToString());//-->gets new amount

    string type= e.OldValues["Type"].ToString();//-->gets the item

    double refer_amt=Misc_functions.Get_Item_Amount(type,out msg);//--this function fetches the normal amount for a particular item

    if (new_amt > refer_amt)
    {
        e.Cancel = true;
        ASPxGridView1.CancelEdit();

        ASPxPopupControl2.ShowOnPageLoad = true;

    }


}

В основном мне нужна аутентификация по паролю, если редактируемое количество вышечем нормальное значение.есть идеи ??

1 Ответ

0 голосов
/ 05 марта 2011

Это нельзя сделать с помощью кода сервера.Лучшее решение - создать пользовательскую переменную сценария Java в обработчике событий RowUpdating и проверить ее значение в обработчике событий EndCallback на стороне клиента ASPxGridView.Т.е.

 protected void ASPxGridView1_RowUpdating(object sender, DevExpress.Web.Data.ASPxDataUpdatingEventArgs e)
{ ...
   gridView.JSProperties["cpShowPopup"] = true;
...
}

EndCallback = function(s,e) { 
  if(typeof(s.cpShowPopup) != 'undefined') { 
    popup.Show();
  }
}

Надеюсь, это поможет.

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