Member 12658724 Ответов: 1

Включить или отключить кнопку с помощью текстовых полей пустых или нет.


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

Мой вопрос заключается в том, что я нахожу решение для одного текстового поля.

Однако в моем приложении есть несколько текстовых полей. Я хочу включить эту кнопку, когда все текстовые поля не пусты. Если какое-либо текстовое поле пусто, то кнопка должна быть отключена.

Код в ссылке применяется только к одному имени свойства.
SearchPersonCommnad = new RelayActionCommand()
            {
                CanExecuteAction = n=> !String.IsNullOrEmpty(Name),
                 ExecuteAction = n => defaultView.Filter = name => ((PersonInfo)name).FirstName.StartsWith(Name) 
                     || ((PersonInfo)name).LastName.StartsWith(Name) 
                     || ((PersonInfo)name).City==Name
            };


Допустим, у меня много свойств, как это сделать?

Что я уже пробовал:

Есть похожие одна Но это не решает моего вопроса.

1 Ответов

Рейтинг:
1

Richard Deeming

Если вы хотите отключить команду, когда любое из свойств набора пусто, то просто обновите его. CanExecuteAction соответственно:

CanExecuteAction = n => !string.IsNullOrEmpty(FirstProperty) && !string.IsNullOrEmpty(SecondProperty) && ...