Я пытаюсь разделить ресурс ObjectDataProvider между моим основным приложением и пользовательским элементом управления. Я определяю odp в отдельном файле словаря ресурсов, который включен в приложение и пользовательский элемент управления.
<ObjectDataProvider x:Key="AsymmetricFrameHolder"
ObjectType="{x:Type data:DataFrameAsymmetric}"/>
Затем я пытаюсь получить к нему доступ в основном приложении следующим образом:
ObjectDataProvider odp = (ObjectDataProvider)Resources["AsymmetricFrameHolder"];
return (DataFrameAsymmetric)odp.ObjectInstance;
И привяжите его в пользовательском элементе управления с помощью:
<Grid Name="grid" Height="Auto" Width="Auto"
DataContext="{StaticResource AsymmetricFrameHolder}">
Потом:
<TextBox Name="TextBox_Length" Grid.Row="0" Grid.Column="1"
Text="{Binding Path=Length }"/>
Это создает 2 экземпляра DataFrameAsymmetric. Один в основном приложении и один в пользовательском элементе управления.
Как я могу настроить программу так, чтобы был создан один общий экземпляр?