0

Подскажите, пожалуйста, как в C# сделать аналогичный слушатель, как в JavaFX для зависимости между ComboBOX, пример ниже как делал в JavaFX

 private String [] Region_Box_Arr = {"Санкт-Петербург", "Москва", "Алтайский край"};
    private String [] SPB = {"Санкт-Петербург"};
    private String [] MSK = {"Москва"};
    private String [] AltKr = {"Барнаул", "Бийск", "Рубцовск", "Новоалтайск", "Заринск", "Камень-на-Оби", "Славгород", "Алейск"};
    @FXML
    void initialize(){}
    @Override
    public void initialize(URL url, ResourceBundle resourceBundle) {
        Region_Box.getItems().addAll(Region_Box_Arr);
        Region_Box.valueProperty().addListener((observable, oldval, newVal)->
        {State_Box.getItems().clear();
        if (newVal == null) {
        State_Box.setDisable(true);}
        else if ("Санкт-Петербург".equals(newVal)){
        State_Box.getItems().addAll(SPB); }
        else if ("Москва".equals(newVal)) {
        State_Box.getItems().addAll(MSK); }
        else и т д
  • В WPF не принято напрямую лезть к контролам без важной причины. Для этого есть биндинги. – vitidev Jan 14 '24 at 17:26
  • Как тогда сделать зависимые выпадающие списки? – Леонид Jan 14 '24 at 17:40
  • 1
    Все зависит от того, как вы храните все эти данные. Допустим, логично сделать класс "Регион", в котором будет коллекция городов, потом создать коллекцию самих регионов, и вот у вас уже связанные данные, ну а вывод их будет таким. Если вы связь не хотите делать, то вам нужно у первого бокса привязать SelectedItem и при его изменении менять привязанную коллекцию уже городов. Ну и третий вариант фильтры. Вариантов как видите уйма. – EvgeniyZ Jan 15 '24 at 00:29

0 Answers0