Как указать альтернативные правила для управления numericupdown в VB.NET 14?
Я работаю над проектом, который требует нескольких элементов управления NumericUpDown. Некоторые из них меняются в соответствии с ценностями других. Например, когда значение nud1 увеличивается, значение nud2 также увеличивается. Но если nud2 увеличивается, nud1 остается прежним. Я бы добавил код, но я вообще не могу понять, как это сделать! Кто-нибудь может мне помочь?
Итак, у меня есть 8 элементов управления NumericUpDown на странице. nud1 и nud5 связаны, nud3 и nud6 и nud7 связаны, а nud4 и nud8 связаны. Когда первый из этих нюдов увеличивается или уменьшается, их двойник также увеличивается или уменьшается. Однако если второй НУД увеличивается/уменьшается, то первый не должен меняться.
Мне нужно знать, как отделить метод UpButton от метода DownButton. Однако я не могу понять, как его использовать. Помочь?
Кэт
Что я уже пробовал:
Я не смог ничего сделать. Каждый раз, когда я выбираю или набираю слова " UpButton "или" DownButton", я получаю красные волнистые линии и ошибку, которая гласит: "UpButton не объявлен. Он может быть недоступен из-за своего уровня защиты." Я попытался вызвать его с помощью "nudST. UpButton ()" ...это почти все, что я могу придумать, и он ничего не делает, кроме как дает мне это маленькое сообщение.
Richard MacCutchan
Вероятно, вам следует использовать одно из событий, сигнализирующих об изменении значения, и при необходимости изменять подключенные элементы управления.
PoiJoy
В том-то и дело...Какие события и какие связанные элементы управления? Я никогда раньше не использовал элемент управления NumericUpDown, но они очень популярны, поэтому я хочу знать, как их использовать...но я не могу найти ничего в интернете об этом элементе управления, что имело бы смысл.
Richard MacCutchan
Все это есть в документации: https://msdn.microsoft.com/en-us/library/system.windows.forms.numericupdown(v=против 110). aspx.
PoiJoy
По-видимому, я не совсем правильно передаю свою проблему. Я не знаю, как читать информацию MSDN." Я не знаю, как и куда поместить любой код, указанный на их сайте. Я новичок в этом деле, и читать информацию на этом сайте-все равно что пытаться читать по-гречески.
Richard MacCutchan
Затем вам нужно пойти и поискать образцы и учебные пособия. Видеть https://www.google.com/search?вопрос=как+на+использование+цифровой+вверх+вниз для некоторых полезных ссылок.
Кстати, если вы действительно не можете понять документацию MSDN, у вас будет много проблем как у разработчика.
PoiJoy
У меня уже есть проблемы и из-за этого я страдаю от тяжелой депрессии, но спасибо, что указали на это.
Вот моя проблема с MSDN. Они дают вам кусочки вещей, но на самом деле не показывают вам всю картину. Да, защита интеллектуальной собственности и все такое. Для того, кто пытается чему-то научиться, трудно понять, например, что это значит:
Общественного Класса Numericupdown
Наследует UpDownBase
Реализует ISupportInitialize
...окей. Ну и...что? Как это заставляет кнопки работать иначе, чем они предназначены? Или что делает этот блок кода? Почему это не сработало, когда я попробовал? Как я уже сказал, Я новичок и кое-чего не понимаю. Я учился в колледже в течение 4 лет для этого материала, но я не очень много узнал о реальном кодировании. По какой-то причине это не было основным направлением моих курсов программирования. Казалось, они только учили меня писать простые методы и задавать свойства моих элементов управления. Все, что происходило за кулисами, просто исключалось из учебной программы.
Richard MacCutchan
MSDN - это ссылка, где вы можете проверить конкретные детали любого элемента управления, метода, события, функции и т. д. Но вам нужно понимать язык (C, C++, C#, VB.NET и т. д.), и т.Сначала NET framework. А для этого нужны тренировки или длительные периоды самообразования. Мне трудно поверить, что 4 года в колледже не дали вам лучшей основы в этих предметах.
Однако, сказав Все это, вы можете легко настроить обработчик событий в Visual Studio. Перейдите на страницу свойств интересующего вас элемента управления и щелкните список событий. Прокрутите вниз до ValueChanged и дважды щелкните по нему. Он автоматически добавит обработчик событий в ваш код, так что вы можете добавить любую обработку, которая вам нужна внутри этого метода. Это, вероятно, поможет вам создать простой проект с двумя такими элементами управления, чтобы поиграть с ними, просто чтобы увидеть, что вам нужно сделать.
И наконец, не используйте имена по умолчанию (nud1, nud2 и т. д.) Для элементов управления, используйте правильные значимые имена, которые дают представление о том, для чего предназначен этот элемент управления. Вы можете знать, что nud8 делает сегодня, но через 6 месяцев вы, вероятно, забудете. И еще хуже для кого-то другого, кто должен поддерживать ваш код.
PoiJoy
Спасибо за понимание. Мои профессора имели склонность предполагать, что все в их классе уже были профессионалами, что смешно. По большей части я понимаю VB.NET, но в школе они ни разу не сделали ничего, чтобы изменить поведение установленного элемента управления. Если это была кнопка, у нее было событие нажатия. Если это был раскрывающийся список, у него было событие изменения индекса ... и так далее. Итак, вернемся к вопросу, как мне использовать методы UpButton / DownButton в VB для этих элементов управления? Частично проблема в том, что два подключенных NUD не всегда будут иметь одно и то же значение. Если nud1 идет вверх / вниз, nud2 должен последовать его примеру, но не наоборот. (Я использую только «nud1» и «nud2» в качестве примеров. Фактические элементы управления называются nudST и nudHP.) Итак, мне нужно иметь возможность различать увеличение и уменьшение значений.
Я заставил программу работать с помощью кнопок и текстового поля, но я хочу знать, как работает элемент управления NumericUpDown и как использовать его методы, свойства и тому подобное. Поскольку я должен научиться использовать VS Community 2015, мне нужно знать, как использовать то, чего у них не было в VS 2008...at по крайней мере, мы не использовали их в классе.
Richard MacCutchan
Вы не используете эти методы, вы используете обработчик событий, который срабатывает каждый раз, когда значение изменяется. См. мое решение ниже. Я знаю, что это C#, но его должно быть легко преобразовать в VB.NET