[英]Autocompletion with a ResourceDictionary in App.xaml
這是我當前的項目架構:
Program.Startup.csproj
--- Styles
------ MyStyles.xaml
--- App.xaml
Program.View.csproj
--- MainWindow.xaml
--- SettingsView.xaml
--- ...
我正在使用我的app.xaml為所有控件加載樣式:
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Styles/MyStyles.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
每當我在主窗口中使用樣式時,在設計期間都找不到該樣式。 開發視圖/窗口時,有沒有辦法使自動完成工作停止1000個“未找到的錯誤”?
窗口是內容控件。
因此,您可以根據需要切換其內容。
將主窗口放在與入口點完全不同的項目中並沒有多大意義。
如果要在其中使用foo,則可以新建foo的實例,並使MainWindow.Content = myFoo。
想要bar代替...。您可以將其內容設置為bar的實例。
無論如何,無論您的主要解決方案是什么,都可以添加其他項目。
您可以添加現有項目,以便您的代碼在同一解決方案中都可見。
因此,您的意見將是。
然后,在app.xaml中,您可以合並入口點解決方案中的資源詞典,並使用包表示法來合並其他項目中的資源詞典。
這是一個實時app.xaml的副本。
<Application x:Class="ScenarioEditor.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Startup="Application_Startup"
>
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/UILib;component/Resources/Geometries.xaml"/>
<ResourceDictionary Source="pack://application:,,,/UILib;component/Resources/ControlTemplates.xaml"/>
<ResourceDictionary Source="pack://application:,,,/UILib;component/Resources/FontResources.xaml"/>
<ResourceDictionary Source="/Resources/ScenarioEditorResources.xaml"/>
<ResourceDictionary Source="pack://application:,,,/UILib;component/Resources/UILibResources.xaml"/>
<ResourceDictionary Source="pack://application:,,,/UILib;component/Resources/HypsoColoursRD.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
我的解決方案是Scenario Editor和ScenarioEditorResources,因為它引用了其他幾個項目,並且它們的資源字典也已合並。 我通過在Visual Studio中打開方案編輯器解決方案來工作。
當我編輯那些引用的項目之一中的內容時,UILib會合並所有資源。
您也可以添加設計資源字典,但是看起來它可以從exe加載到dll中。
不是傳統的工作方式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.