2016-11-21 175 views
17

我剛剛開始在名爲visual studio 2017 RC的新版visual studio中編寫報告軟件,但只注意到核心reportviewing工具在Windows窗體和WPF應用程序模板中都缺失。誰能告訴我爲什麼reportviewer工具從visual studio 2017中消失了?沒有它真的有麻煩。在新的Visual Studio中有沒有其他的工具可以使用這個工具?在visual studio 2017中缺少Reportviewer工具RC

回答

26

更新:微軟於2017年4月18日發佈了document描述如何配置和在Visual Studio中使用報表工具2017

的Visual Studio 2017年沒有在默認安裝的ReportViewer工具工具箱。安裝擴展用於Visual Studio的Microsoft Rdlc報表設計器然後將其添加到工具箱中會導致出現在表單下的非可視組件。

微軟支持人員告訴我這是一個錯誤,但截至2017年4月21日它「按設計工作」。

對於需要ReportViewer的每個項目,需要遵循以下步驟。

  • 如果您在工具箱中有ReportViewer,請將其刪除。突出顯示,右鍵單擊並刪除。
    • 你將不得不有一個項目,打開窗體來做到這一點。
  • 如果您已經安裝了Microsoft Rdlc Report Designer for Visual Studio擴展程序,請將其卸載。
  • 關閉您的解決方案並重新啓動Visual Studio。這是至關重要的一步,如果VS在解決方案之間切換時未重新啓動,則會發生錯誤。
  • 打開您的解決方案。
  • 打開NuGet程序包管理器控制檯(Tools/NuGet Package Manager/Package Manager Console
  • 在PM>提示符處輸入此命令,案件很重要。

    Install-Package Microsoft.ReportingServices.ReportViewerControl.WinForms

    你應該看到的文字描述包的安裝。

現在我們可以暫時將ReportViewer工具添加到工具箱中。在工具箱中

  • 右鍵單擊並使用Choose Items...

  • 我們需要瀏覽到位於解決方案Packages文件夾中的適當DLL,所以打的瀏覽按鈕。

  • 在我們的例子中,我們可以像軟件包管理器控制檯文本所示那樣粘貼包文件夾。

    C:\Users\jdoe\Documents\Projects\_Test\ReportViewerTest\WindowsFormsApp1\packages

  • 然後雙擊名爲 Microsoft.ReportingServices.ReportViewerControl.Winforms.140.340.80

    版本號將在未來可能更改文件夾上。

  • 然後雙擊lib並再次在net40上。

  • 最後,在文件Microsoft.ReportViewer.WinForms.dll

    雙擊您應該看到ReportViewer在對話框中選中。滾動到右側,您將看到與其關聯的版本14.0.0.0。

  • 單擊確定。

ReportViewer現在位於工具箱中。

  • 將工具拖動到所需的形式。

  • 一旦完成,刪除工具框中ReportViewer工具。你不能在另一個項目中使用它。

  • 您可以保存該項目,並很好去。

記得要重新啓動Visual Studio你需要用ReportViewer打開一個項目,這樣的DLL從正確位置加載的任何時間。如果您嘗試使用ReportViewer的表單打開解決方案而無需重新啓動,您將看到指示「The variable 'reportViewer1' is either undeclared or was never assigned.」的錯誤。

如果您將新項目添加到相同的解決方案中,您需要創建項目,保存解決方案,重新啓動Visual Studio,然後您應該可以將ReportViewer添加到窗體。我已經看到它不是第一次工作,並顯示爲非可視化組件。

當發生這種情況,從形式移除組件,刪除從項目的​​引用,保存和重新啓動通常工作。

+0

非常感謝... –

+0

@Rich Shealer是MVC項目的相同過程嗎? –

+0

@KinjalPatel我不使用MVC,所以我不能給你一個高質量的答案。 –

2

請注意,將通過@Rich Shealer所述上報服務的這個程序上面將每次啓動一個不同的項目時間迭代。爲了避免這種情況:

  1. 如果您可能需要設置不同的計算機(例如,在家裏沒有上網),然後繼續從市場上下載的安裝程序在安全的地方,即:

    • Microsoft.DataTools.ReportingServices.vsix和
    • Microsoft.RdlcDesigner。VSIX
  2. 獲取從包或已創建的應用程序與報告服務的bin文件夾下面的圖書館是:

    • Microsoft.ReportViewer.Common.dll
    • Microsoft.ReportViewer。 DataVisualization.dll
    • Microsoft.ReportViewer.Design.dll
    • Microsoft.ReportViewer.ProcessingObjectModel.dll
    • Microsoft.ReportViewer.WinForms.dll
  3. 從1安裝部件2上面的

  4. 從2添加的DLL以上作爲參考(項目>參考>添加...)
  5. (可選)新增報表標籤到工具欄
  6. 添加項目報告標籤
  7. 瀏覽到bin文件夾或您有以上的dll,並將它們添加

你現在很好去! ReportViewer圖標將被添加到您的工具欄中,並且您現在還會發現,當您要向項目添加新項目...(報告)時,報告和ReportWizard模板將添加到您的通用模板列表中

注意:使用Nuget包管理器進行設置,報告和報告嚮導模板被分組在報告下。但是,使用我上面描述的方法並沒有在已安裝的模板中添加報告分組,但是我不認爲這會給您帶來麻煩,因爲它使您能夠在沒有互聯網的情況下快速集成rdlc,並且無需每次都下載您已有的Nuget。

+0

嗨@Hannington Mambo,謝謝你的有用解決方案。我已經完成了你的步驟,現在我可以在我的工具箱中看到reportviewer控件,並且可以將它添加到我的表單中,但是我沒有在添加新的報表和報表嚮導項項目面板。你能幫我... –

+0

很高興幫助!我能夠讓他們進入我的添加新項目...已安裝的模板。我解釋說報告模板組將不可用。有時你可能需要關閉vs,刪除和添加dll –

相關問題