Pode-se ligar uma fonte de itens de combobox de um datatemplate de um ItemsControl

DadoComboBox noItemsControl terá itens diferentes, que é baseado noDataContext do item (não doItemsControl). Isso pode ser feito? E como? De preferência do código atrás.

Eu tenho o seguinteDataModel:

class Tester
{
    public Tester(string name, string surname)
    {
        Name = name;
        Surname = surname;
    }

    public string Name { get; set; }
    public string Surname { get; set; }
    public override string ToString()
    {
        return Name + " " + Surname;
    }
}

class TheT
{
    public ObservableCollection<Tester> TesterObject;

    public TheT()
    {
        TesterObject = new ObservableCollection<Tester>();
    }

    public string myDisplayName { get { return "test"; } }

    public void Add(Collection<Tester> col)
    {
        TesterObject.Clear();
        foreach (Tester t in col) { TesterObject.Add(t); }
    }
}

EmWindow código eu tenho:

ObservableCollection<TheT> myDataV ;
Public MainWindow()
{
    InitializeComponent();

    ObservableCollection<Tester> Tester1 = new ObservableCollection<Tester>();
    Tester1.Add(new Tester("Sunny", "Jenkins"));
    Tester1.Add(new Tester("Pieter", "Pan"));

    ObservableCollection<Tester> Tester2 = new ObservableCollection<Tester>();
    Tester2.Add(new Tester("Jack", "Sanders"));
    Tester2.Add(new Tester("Bill", "Trump"));

    myDataV = new ObservableCollection<TheT>();
    myDataV.Add(new TheT(Tester1));
    myDataV.Add(new TheT(Tester2));

    IControl.ItemsSource = myDataV;
    IControl.ItemTemplate = TestingDT;
}

IControl sendo umItemsControl criado emXAML:

<ItemsControl x:Name="IControl" Margin="53,375,81,63">
    <ItemsControl.ItemsPanel>
        <ItemsPanelTemplate>
            <VirtualizingStackPanel Orientation="Horizontal"/>
        </ItemsPanelTemplate>
    </ItemsControl.ItemsPanel>
</ItemsControl>

EDataTemplate que eu tentei de todas as maneiras. Mas ainda não consigo itens para mostrar como abaixo:

// the DataTemplate
private DataTemplate TestingDT
{
    get
    {
        DataTemplate DFT = new DataTemplate();
        DFT.DataType = typeof(TheT);

        FrameworkElementFactory Item = new FrameworkElementFactory(typeof(ComboBox));

        Binding B = new Binding("TesterObject")
        {
            Source = this
        };

        Item.SetBinding(ComboBox.ItemsSourceProperty, B);
        //Item.SetValue(ComboBox.DisplayMemberPathProperty, "Name");

        DFT.VisualTree = Item;
        return DFT;
    }
}

questionAnswers(1)

yourAnswerToTheQuestion