2013-03-29 34 views
-1

我有一個wpf導航應用程序。我有一個對象,我想從不同的頁面訪問。目前,該對象只能在創建它的頁面上使用。如何在xaml中創建全局對象?

在這裏,我做了什麼。

在頁面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中做到這一點?

+1

什麼是錯誤? –

+1

您可能只是缺少'd:'(designtime)命名空間。 –

+0

對不添加實際的錯誤信息。你是正確的我想念d :.現在都好。謝謝抱歉。 –

回答

0

問題是缺少d:命名空間