與earlier question相關我問過,我看到LoadComponent()和XamlReader.Load()。他們非常相似,我不太清楚在哪種情況下我應該使用哪一個。LoadComponent()VS. XamlReader.Load()?
那麼,本質上兩者有什麼區別呢?
謝謝!
與earlier question相關我問過,我看到LoadComponent()和XamlReader.Load()。他們非常相似,我不太清楚在哪種情況下我應該使用哪一個。LoadComponent()VS. XamlReader.Load()?
那麼,本質上兩者有什麼區別呢?
謝謝!
MSDN:
投機
我猜想,LoadComponent調用XamlReader.Load()
。 LoadComponent看起來更像一個應用程序級別的服務,並且可能被應用程序本身用來加載所有的xaml資源。 XamlReader是您想要的特定庫調用。
認爲它是LoadComponent是一個Application Service,其中XamlReader是包含該功能的庫。
Application.LoadComponent:應用程序首先將資源預加載爲一個'Package'並將其註冊到PreloadedPackage類中,當調用LoadComponent方法時,wpf首先檢查包是否存在且資源是否存在,然後檢查resouse是否爲xaml或baml,最後使用提供的BaseUri加載資源流
如果資源是baml,則LoadComponent將使用Baml2006Reader,否則使用XamlReader處理資源流。
XamlReader.Load可以在程序集外加載xaml資源。