WPF Popup focus w siatce danych

Tworzę niestandardowy UserControl do użycia wewnątrz szablonu edycji DataGrid. To wygląda tak:

<UserControl
   x:Class="HR.Controls.UserPicker"
   xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
   xmlns:tk="http://schemas.microsoft.com/wpf/2008/toolkit"
   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

    <Grid>
        <TextBlock x:Name="PART_TextBox" Text="Hello WOrld" />
        <Popup Width="234" Height="175" IsOpen="True" StaysOpen="True"

             Placement="Bottom"
             PlacementTarget="{Binding ElementName=PART_TextBox}"
         >
            <TextBox
                  x:Name="searchTextBox"
                  Text="&gt;Enter Name&lt;"/>
        </Popup>
    </Grid>
</UserControl>

edytować: Zawęziłem nieco kod. Wydaje się, że jeśli umieścisz Popup z polem tekstowym bezpośrednio w CellEditingTemplate, pole tekstowe nie będzie miało żadnego problemu. Kiedy przenoszę ten kod do UserControl, nie mogę już zaznaczyć pola tekstowego podczas edycji komórki.

Czy UserControl robi coś zabawnego z fokusem?

Problem polega na tym, że podczas edycji komórki w datagrid pojawia się kontrola użytkownika, ale nie mogę kliknąć w polu TextBox searchTextBox. Po kliknięciu wyskakujące okienko zamyka się i komórka powraca do ustawień domyślnych.

Próbowałem kopiować i wklejać cały kod wewnątrz formantu użytkownika i wklejać go bezpośrednio do CellEditingTemplate i to oddziałuje tak, jak powinno.

Zastanawiałem się, czy UserControl zrobił coś dziwnego, co uniemożliwia skupienie się wyskakującego okienka, ponieważ działa ono zgodnie z oczekiwaniami, gdy jest bezpośrednio umieszczone w CellEditingTemplate?

Dzięki, Raul

questionAnswers(4)

yourAnswerToTheQuestion