私はwpfナビゲーションアプリケーションを持っています。別のページからアクセスしたいオブジェクトがあります。現在、オブジェクトはそれを作成したページからのみ使用できます。
ここで私がしたこと。
ページ内 A.xaml
私はそのようにページで定義しました
<UserControl.Resources>
<local:SerialComm x:Key="SerialCommDataSource" d:IsDataSource="True" />
</UserControl.Resources>
上記の方法は、スコープがページにのみ限定されることを除いて機能します。他のページからオブジェクトにアクセスできるようにしたい。
ページ内のオブジェクトを次のように使用します
<Grid Style="{StaticResource ContentRoot}" DataContext="{Binding Source={StaticResource SerialCommDataSource}}" >
<TextBox x:Name="tbbaudRate" Height="23" TextWrapping="Wrap" MinWidth="200" Text="{Binding SerialPort.BaudRate}" />
</Grid>
リソースを App.xaml に配置して、どこからでもアクセスできるようにしたいと考えています。
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/Blah;component/Assets/Blah.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
<local:SerialComm x:Key="SerialCommDataSource" d:IsDataSource="True" /> <--Error here
</Application.Resources>
xaml でグローバル オブジェクトを作成するにはどうすればよいですか? オブジェクトはどこでも編集できる必要があり、編集された値は更新されます。コードビハインドでオブジェクトを作成できず、xaml のどこにでもアクセスできないことを読みました。では、xamlでこれを行うにはどうすればよいですか?