Вывести значение из реестра, отобразить её на форме с формулировкой
Цитата: Senior от 30.09.2020, 21:35Доброй ночи! Перейду сразу к вопросу. Хочется реализовать на подобии клинеров и других программ одну фичу. В коде у меня считывает параметр в реестре, и мне нужно в зависимости от параметра в реестре отобразить на форме предупреждение. К примеру (Если параметр в реестре 3 то на форме ничего не отобразится, если параметр 4 то на форме появится предупреждение не надо вам значение 4 это значение может привести к деградации системы) Надеюсь понятно обьяснил.
Код:using RegistryKey key = Registry.CurrentUser.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced"); checkBox1.Checked = key?.GetValue("Start_TrackProgs")?.ToString() == "4";Это чекер чекбокса, но хочется сделать такой же чекер только чтобы он отображал на форме при значении 4 (текстом) по типу оповещения.
Доброй ночи! Перейду сразу к вопросу. Хочется реализовать на подобии клинеров и других программ одну фичу. В коде у меня считывает параметр в реестре, и мне нужно в зависимости от параметра в реестре отобразить на форме предупреждение. К примеру (Если параметр в реестре 3 то на форме ничего не отобразится, если параметр 4 то на форме появится предупреждение не надо вам значение 4 это значение может привести к деградации системы) Надеюсь понятно обьяснил.
Код:
using RegistryKey key = Registry.CurrentUser.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced");
checkBox1.Checked = key?.GetValue("Start_TrackProgs")?.ToString() == "4";
Это чекер чекбокса, но хочется сделать такой же чекер только чтобы он отображал на форме при значении 4 (текстом) по типу оповещения.
Цитата: Сергей от 30.09.2020, 21:39Добрый вечер 🖐
using RegistryKey key = Registry.CurrentUser.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced") if (key?.GetValue("Start_TrackProgs")?.ToString() == "4") { MessageBox.Show("А может, не надо?"); }
Добрый вечер 🖐
using RegistryKey key = Registry.CurrentUser.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced")
if (key?.GetValue("Start_TrackProgs")?.ToString() == "4")
{
MessageBox.Show("А может, не надо?");
}
Цитата: Senior от 30.09.2020, 22:00Прошу прощения, не правильно обьяснил. На примере клинера, мы к примеру отмечаем в чекбоксе что можно проверить и он выводит результат на форме. И вот как мне сделать чтобы при запуске программы на форме, появился label если значение параметра 4, если этого параметра нету или он 3 то label даже и не появится. То есть можно сказать при запуске программы он проверит ветку реестра а именно ключ, если он будет 4 то он отобразит предупреждение, без messagebox а на самой форме в виде Label. Огромное прощение за то что отнимаю у вас драгоценное время(
Прошу прощения, не правильно обьяснил. На примере клинера, мы к примеру отмечаем в чекбоксе что можно проверить и он выводит результат на форме. И вот как мне сделать чтобы при запуске программы на форме, появился label если значение параметра 4, если этого параметра нету или он 3 то label даже и не появится. То есть можно сказать при запуске программы он проверит ветку реестра а именно ключ, если он будет 4 то он отобразит предупреждение, без messagebox а на самой форме в виде Label. Огромное прощение за то что отнимаю у вас драгоценное время(
Цитата: KiloSub от 30.09.2020, 22:10Поставь на форму в нужном месте скажем
label1с нужным текстом. У него есть свойствоVisible(видимость), делаешьfalse. Дальше понятно? )). В предыдущем примере вместо messagebox делаешьlabel1.Visible = true.
Поставь на форму в нужном месте скажем Скопированоlabel1 с нужным текстом. У него есть свойство СкопированоVisible (видимость), делаешь Скопированоfalse. Дальше понятно? )). В предыдущем примере вместо messagebox делаешь Скопированоlabel1.Visible = true.
Цитата: Сергей от 30.09.2020, 22:12Как динамически добавить Control на форму:
void Form1_Load(object sender, EventArgs e) { // if ... Проверяете Ваше значение Label label = new Label(); label.Location = new Point(20, 20); // Это положение label label.Text = "123"; Controls.Add(label); // Не забудьте про эту строку, иначе ничего не добавится. Чтобы добавить что-то своё, изучайте свойства Control'ов. }
Как динамически добавить Control на форму:
void Form1_Load(object sender, EventArgs e)
{
// if ... Проверяете Ваше значение
Label label = new Label();
label.Location = new Point(20, 20); // Это положение label
label.Text = "123";
Controls.Add(label); // Не забудьте про эту строку, иначе ничего не добавится. Чтобы добавить что-то своё, изучайте свойства Control'ов.
}