Получить объект, созданный новым FrameworkElementFactory(typeof(T))

Мы добавляем DataGridTemplateColumn в DataGrid и заполняем DGTC комбинированным списком, созданным с помощью

 DataGridTemplateColumn dgtc = new DataGridTemplateColumn();
 FrameworkElementFactory comboBoxFactory = new FrameworkElementFactory(typeof(ComboBox));  
/* snip */
 DataTemplate cellEditTemplate = new DataTemplate();
 cellEditTemplate.VisualTree = comboBoxFactory;
 dgtc.CellEditingTemplate = cellEditTemplate;

 dgtc.SortMemberPath = string.Format($"{descr.BindingPropertyName}");

 dgtc.Header = descr.BindingPropertyName;

Позже нам нужно изменить свойства, такие как TextSearch.TextPathProperty.
Мы получаем CellEditingTemplate из DataGridTemplateColumn; вопрос "Как получить доступ к CellEditingTemplate.VisualTree в виде комбинированного списка"?

Этот код предполагает, что VisualTree является комбинированным списком:

        var cellEditingTemplate = dgtc.CellEditingTemplate;  
        var propsVals = cellEditingTemplate.GetPropertyValues();
        foreach (KeyValuePair<string, string> pair in propsVals)
        {
            Debug.WriteLine($"Key: {pair.Key}     value: {pair.Value}");
        }

Выход:
Ключ: Введите значение: Windows.Controls.ComboBox

Похоже, что нет способа привести VisualTree к ComboBox.
Что я пропускаю?
Спасибо --

0 ответов

Другие вопросы по тегам