Как игнорировать изменение флажка в просмотре списка? - PullRequest
0 голосов
/ 28 октября 2010

У меня есть список с флажком свойства = true.

Когда пользователь нажимает на флажок и меняет его состояние (проверено -> не проверено или не проверено -> проверено), я ловлю событие ItemCheck и выполняю некоторую реализацию БД.

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

Когда пользователь отменяет свою команду, я хочу, чтобы флажок возвращался в ее состояние.

Как я могу сказать, что просмотр списка игнорирует изменение состояния флажка?

Спасибо

Маттан

Ответы [ 3 ]

2 голосов
/ 28 октября 2010

В событии ItemCheck установите NewValue на CurrentValue:

private void listView1_ItemCheck(object sender, ItemCheckEventArgs e)
{
    if (MessageBox.Show(this, "Change?", "Test", MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.No)
        e.NewValue = e.CurrentValue;
}
0 голосов
/ 02 ноября 2010

Я использовал событие OnChecked вместо OnCheck.

Чтобы отменить, я просто установил значение! Value.

0 голосов
/ 28 октября 2010

Проверьте атрибут OnClientClick элемента checkBox:

http://www.dotnetcurry.com/ShowArticle.aspx?ID=93&AspxAutoDetectCookieSupport=1

С помощью этого вы можете отменить обратную передачу, а также установить значение флажка обратно на прежнее значение,Если вы используете поле шаблона вместо свойства checkbox = true, вы можете добавить атрибут OnClientClick к флажку там;в противном случае вам нужно добавить его динамически в событие ListView ItemDataBound.

EDIT Упс, тег "winforms" не виден;думал, что это ASP.Net (который также имеет элемент управления ListView).Пожалуйста, не обращайте внимания.

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