Przeprowadzam migrację aplikacji komputerowej WPF z .NET Framwork do Core 3.0. Korzystałem z System.Windows.Forms.FolderBrowserDialog () i teraz utknąłem, jak dodać to odniesienie do projektu Core. Nie ma dostępnego pakietu NuGet „System.Windows.Forms”, prawda? Czy jest jakiś alternatywny sposób wyświetlania FolderBrowserDialog w rdzeniu?
Aktualizacja
Utworzyłem projekt Core przy użyciu domyślnego szablonu, a następnie skopiowałem do niego wklejone pliki .cs i .xaml. Plik .csproj wygląda następująco:
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
<PropertyGroup>
<OutputType>WinExe</OutputType>
<TargetFramework>netcoreapp3.0</TargetFramework>
<UseWPF>true</UseWPF>
</PropertyGroup>
c#
wpf
.net-core
folderbrowserdialog
Yaugenka
źródło
źródło
The type or namespace name 'Forms' does not exist in the namespace 'System.Windows'
i nie sugeruje importu referencji.Odpowiedzi:
Musisz dodać do csproj dodatkowy przełącznik:
Dodaj go poniżej UseWpf . Następnie spróbuj odbudować. Po tym powinieneś być w stanie korzystać z przestrzeni nazw Forms.
źródło
Wygląda na to, że już istnieje: https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.folderbrowserdialog?view=netcore-3.0
W przypadku innych problemów z portowaniem możesz skorzystać z pakietu zgodności z systemem Windows, który jest używany do pomocy w przenoszeniu aplikacji do platformy .NET Core
Może być też trochę więcej informacji związanych z WPF i tym problemem, ponieważ istnieje on już od jakiegoś czasu. Może to być pomocne Okno dialogowe Wybierz folder WPF i zaktualizowane do wersji .NET Core.
Powodzenia w aktualizacji!
źródło