Рейтинг:
9
Sergey Alexandrovich Kryukov
- Спросил крискритбосс
Что-то еще, класс закончен, я хочу теперь использовать его в своем проекте, класс находится в том же решении Form1, но я не могу использовать "использование горячих клавиш", это выглядит так, как будто класс не существует.
Это не так.
using
директива (чтобы не путаться с ним
using
заявление) используется. Во - первых, это не более чем короткий путь. Существуют псевдонимы и обычные формы пространства имен.
Скажем, ваше полное имя класса
My.Namespace.Hot.HotKey
Затем вы можете сократить это полное имя в использовании, если используете
using
:
using My.Namespace.Hot;
// ...
Hotkey instance;
или
using My.Namespace;
// ...
Hot.Hotkey instance;
или
using My;
// ...
Namespace.Hot.Hotkey instance;
или, наконец, псевдоним:
using VeryHot = My.Namespace.Hot.HotKey;
// ...
VeryHot instance;
Во всех случаях вы можете использовать полные имена типов, независимо от того, что вы используете
using
или нет.
Я надеюсь, что примеры понятны, но почему бы не прочитать об этом и не изучить как пространства имен, так и
using
- Пожалуйста, смотрите:
https://msdn.microsoft.com/en-us/library/z2kcy19k.aspx,
https://msdn.microsoft.com/en-us/library/0d941h9d.aspx,
https://msdn.microsoft.com/en-us/library/sf0df423.aspx.
—СА
ChrisCreateBoss
Я думаю, что классы C# ненавидят меня, я часто получаю много ошибок при использовании классов; у меня есть еще одна, и я надеюсь, что это последняя: не могу получить доступ к константам из моего кода: я использую "private GlobalHotkeys.Тяжкие телесные повреждения ГХК"; и тогда "ГХК = новый GlobalHotkeys.Тяжкие телесные повреждения(констант.НОМОД, ключи.Пространство, это);" и он говорит, что константы не существуют в текущем контексте, но в dreamCode они используются точно так же, как и я.
Sergey Alexandrovich Kryukov
Хорошо, я не знал, что вы решили эту проблему во время ответа, поэтому я надеюсь, что Вы тоже примете, если формально.
Что касается вашего следующего вопроса, то вам нужно показать более широкий контекст кода. Вы опубликуете его как отдельный вопрос о более полном примере кода и отформатируете как код? Если вы это сделаете, пожалуйста, дайте мне ссылку, я постараюсь ответить немного позже, нужно идти сейчас.
—СА
ChrisCreateBoss
Конечно, я опубликую новый вопрос с форматированным текстом. Я дам вам ссылку через несколько минут.
Sergey Alexandrovich Kryukov
Уже ответил... Если вы думали, что этот новый вопрос связан с этим решением, вы были совершенно правы — с одним дополнительным поворотом: использование класса вложенности (что может быть вашим вполне разумным решением — не прислушивайтесь к ложному "совету" Бахусбила).
—СА
Рейтинг:
27
Sergey Alexandrovich Kryukov
Вы метод GlobalHotkey
либо нужно стать конструктором, но тогда его имя должно совпадать с именем его класса.
Все остальные методы, не являющиеся конструкторами, нуждаются в возвращаемых типах, даже если они ничего не возвращают, то это void
, например, public static GlobalHotKey Create(/* ... */)
(где GlobalHotKey
тогда это имя какого-то типа), public void DoSomething(/* ... */)
и тому подобное.
—СА
ChrisCreateBoss
Ух ты, я даже не взглянул на это, еще раз спасибо Сергею!!
Sergey Alexandrovich Kryukov
Добро пожаловать.
—СА