2017-05-23 73 views
1

我有一個非常困難的時期越來越XAML智能感知與封裝在一個的NuGet的裝配工作。UWP的XAML智能感知距離的NuGet(視覺工作室2017年)

我創建了包含一串資源字典的DLL中的NuGet。我已經將所有的.dll,.pdb,.pri,.xaml和.xr.xml文件都包含在nuget中。

在我的消費應用程序,我想利用這些資源字典如下:

<App.Resources> 
    <ResourceDictionary> 
     <ResourceDictionary.MergedDictionaries> 
      <ResourceDictionary Source="ms-appx:///StyleTest/Brushes.xaml"></ResourceDictionary> 
      <ResourceDictionary Source="ms-appx:///StyleTest/Spacings.xaml"></ResourceDictionary> 
     </ResourceDictionary.MergedDictionaries> 
    </ResourceDictionary> 
</App.Resources> 

的方式解決在運行時間,但我似乎不能在設計時得到了他們的智能感知(甚至雖然設計者顯示了適當的顏色)注意squigglies:enter image description here

我也試圖在資源項目,並添加代碼隱藏我的風格消耗是這樣的:

<App.Resources> 
<ResourceDictionary> 
    <ResourceDictionary.MergedDictionaries> 
     <Styles:Brushes/> 
    </ResourceDictionary.MergedDictionaries> 
</ResourceDictionary> 

但是結果相同。

有沒有人成功能夠使包裝在Nugets在VS2017的資源字典XAML智能感知?

+0

你有沒有嘗試打開XAML文件作爲簡單的解決方案資源管理內容類型XAML文件? (右鍵單擊xaml文件並選擇打開方式...在彈出窗口中選擇「帶編碼的XAML Designer」,然後單擊確定。) –

+0

Hi @ Leo-MSFT!不幸的是打開它與編碼沒有任何區別。 –

+0

好消息和壞消息。當我禁用resharper錯誤squigglies消失,但我仍然沒有得到自動完成intellisense工作。 –

回答

1

我們的資源的IntelliSense目前是基於設計師,所以如果設計師能夠正確地解決資源,則智能感知應該能夠顯示它。讓我們嘗試一些事情:

  1. ReSharper的 - 嘗試完全禁用它,甚至將其卸載(至少暫時)。
  2. 完井 - 當插入符號是在編輯器中的資源,當你按下Ctrl + J會發生什麼?你會得到完成清單嗎?
  3. 當您將資源更改爲其他資源時,設計人員是否更新?

如果這些工作都不可行,您可以與我們分享repro項目嗎?您可以在這裏發佈一個鏈接到一個共享或使用VS中的發送反饋工具來創建一個反饋票據(提及我的名字,以便我可以輕鬆找到它)。

+0

Marco - 感謝您的回覆! 1 )完成resharper消失,問題仍然存在 2)CTRL + J顯示完成列表,但列表不顯示包含在我的nuget包中的資源。 3)是的,設計者似乎總是按預期工作(應用樣式包含在我的nuget中) 我已經把一個repro項目放在這裏:https://github.com/jhorst11/xamlrepro –

相關問題