Noob с диалогом выбора папки C # - PullRequest
0 голосов
/ 26 сентября 2018

Я новичок в StackOverflow и в C #.Я не разработчик программного обеспечения!Вскоре я получил образование ученого-исследователя, много лет работал в области биотехнологий, и я написал код на многих языках, чтобы выполнить свою работу.C # - мой первый «настоящий» современный язык программирования.Короче говоря, я не являюсь частью "в" толпе.Все же.

Изучение новых вещей с помощью базовых упражнений, и, как обычно, основные вещи - это то, что застряло у меня.Я создаю простую форму (winforms), одним нажатием кнопки, чтобы выбрать папку.Возможно, я напишу имя папки в текстовое поле, чтобы убедиться, что оно работает.

Мне не нравится FolderBrowserDialog, поэтому я скачал WindowsAPICodePack-Core и установил его.Вот мой код не работает.

using System;
using System.ComponentModel;
using System.Windows.Forms;
using Microsoft.WindowsAPICodePack.Dialogs;

namespace getDirOpenFile
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void chooseFolder_button_Click(object sender, EventArgs e)
        {
            {
                var dialog = new CommonOpenFileDialog();
                dialog.IsFolderPicker = true;
                if (dialog.ShowDialog() == CommonFileDialogResult.Ok)
                {
                    // stuff
                }
            }
        }

        private void openFileDialog1_FileOk(object sender, CancelEventArgs e)
        {

        }        
    }
}

Visual Studio сообщает: Ошибка CS0246 Не удалось найти имя типа или пространства имен 'CommonOpenFileDialog' (отсутствует директива using или ссылка на сборку?)

NuGet сообщает, что пакет установлен.Примечание: «использование» оператора для «Microsoft.WindowsAPICodePack.Dialogs;»отображается серым цветом как необязательный.Что мне не хватает?

Спасибо всем, Арам

1 Ответ

0 голосов
/ 26 сентября 2018

Это потому, что CommonOpenFileDialog не принадлежит сборке, на которую вы ссылались.

Вместо этого вам следует установить пакет WindowsAPICodePack-Shell, а затем добавить в свой файл:

using Microsoft.WindowsAPICodePack.Shell;

И вы сможете запустить свой код.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...