2016-09-29 6 views
0

У меня возникла проблема с проверкой и снятием одной и той же записи в форме. У меня есть форма со списком записей, в зависимости от состояния записи вы можете увидеть активную/неактивную кнопку. Логика для этого включена в активный метод для источника данных. Когда я нажимаю флажок в первый раз для какой-либо записи, он работает нормально, кнопка действует по мере необходимости, но когда я нажимаю этот же флажок второй раз, чтобы снять отметку с этой записи, кнопка не работает нормально. Например, если запись проверена, кнопка «Принять» активна, но если запись не отмечена, кнопка «Принять» должна быть неактивной. Я попытался решить эту проблему также с помощью метода selectionChanged, но это не помогло. Не могли бы вы дать мне некоторое руководство, как справиться с этой проблемой?ax 2012 - проверка и снятие флажка в форме

Ниже я обновил свое сообщение фотографиями - это особенно касается кнопки подтверждения.

enter image description here

enter image description here

enter image description here

+0

Не могли бы вы указать код для проверки и снятия отметки с кнопки? и если вы выберете другую запись формы списка, эта кнопка будет работать нормально? например, первая запись проверяется, а вторая запись не проверяется. –

+0

public void selectionChanged() { super(); ComplaintMgr_Accept.enabled (Complaints.ComplStatus == ComplStatus :: New); ReasonOfRejectionDialog.enabled (Complaints.ComplStatus == ComplStatus :: New); ComplaintConfirm.enabled ((Complaints.ComplStatus == ComplStatus :: Принято || Complaints.ComplStatus == ComplStatus :: Отклонено) && Complaints.ComplaintConfirmed == Complaints_ComplaintConfirmed.checked (false)); } – annlii

+0

Над моим кодом с логикой. Если я выберу другую запись, она отлично работает - как и ожидалось. Проблема в том, когда я сниму отметку. – annlii

ответ

0

Спасибо за добавить ваш код.

Хорошо, это кнопка ComplaintConfirm ?? если это хлопок в одной части, вы сравниваете Complaints.ComplaintConfirmed == Complaints_ComplaintConfirmed.checked(false)

Complaints.ComplaintConfirmed если перечисление NoYesId ?? если NoYesId, возможно, здесь ошибка.

Можете ли вы попробовать это?

ComplaintConfirm.enabled((Complaints.ComplStatus == ComplStatus::Accepted || Complaints.ComplStatus == ComplStatus::Rejected) && Complaints.ComplaintConfirmed == NoYes::No); 
+0

Спасибо за ваш ответ. Речь идет о кнопке ComplaintConfirm, это перечисление типа NoYes. Я изменил код, как вы предложили, но он все еще не работает. – annlii

+0

Хорошо, действительно, третье изображение все в порядке. потому что вы снимаете отметку с «Confirmed = true». Код правильный и работает нормально. Но также код должен быть на триггере ** Список **, который переключается между записью и другим, и здесь проверяют то же самое, если запись проверена или нет, и включить или отключить кнопку. –