Обработка изменений элемента DataTemplate - PullRequest
0 голосов
/ 19 марта 2020

У меня есть выпадающий список со списком флажков. Список создается динамически. Мне нужен чистый способ обработки изменений флажка.

WPF:

        <ComboBox Margin="0,10,5,0" VerticalAlignment="Top" HorizontalAlignment="Stretch"  Grid.Column="3" x:Name="cb_Filters" SelectionChanged="Cb_Filters_SelectionChanged" MaxDropDownHeight="250" >
            <ComboBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal">
                        <CheckBox IsChecked="{Binding IsSelected}" Content="{Binding FilterOption}"/>
                    </StackPanel>
                </DataTemplate>
            </ComboBox.ItemTemplate>
        </ComboBox>

КОД

public class Filters {
            public Filters()
            {   }

            public bool IsSelected { get; set; }
            public string FilterOption { get; set; }
        }

        ObservableCollection<Filters> ListOfFilters = new ObservableCollection<Filters>
        {
            new Filters {IsSelected = true, FilterOption = "Suppliers"}
        };

        CollectionView collectionView = (CollectionView)CollectionViewSource.GetDefaultView(ListOfFilters);
        cb_Filters.ItemsSource = collectionView;
        TextSearch.SetTextPath(cb_Filters, "FilterOption");

Мой способ - создать тег для элемента, и найти его с помощью VisualTreeHelper, однако я не уверен, есть ли какой-нибудь более простой / понятный способ сделать это.

Спасибо

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