c# winforms получить значение из нового окна

213
02 мая 2018, 03:01

есть 2 формы. на первой, допустим, кнопка открывающая 2-ю форму, на которой есть ползунок TrackBar. как при каждом изменении значения ползунка передавать его значение в главное окно?
Пробовал такой вариант:
form1.cs

private void openTrackbar(object sender, EventArgs e)
{
    using (form2 f2 = new form2())
    {
        if (f2.ShowDialog() == DialogResult.OK)
        {
            int o = Int32.Parse(f2.trackbarValue);
            MessageBox.Show(o + "");
        }
        else {
            MessageBox.Show("error");
        }
    }
}

form2.cs

public string trackbarValue {
    get { return opacityTrackbar.Value.ToString(); }
}

срабатывает только при закрытии 2й формы и выдает "error"

Answer 1

Первая форма

Form2 form2 = new Form2();
form2.TrackBarScrollEvent += Form2_TrackBarScrollEventt;
private void Form2_TrackBarScrollEventt(object sender, EventArgs e)
{
    TrackBar trackBar = sender as TrackBar;
    if (trackBar == null) return;
        string message = trackBar.Value.ToString();
}

Вторая форма с элементом управления TrackBar

public event EventHandler TrackBarScrollEvent;
private void trackBar1_Scroll(object sender, EventArgs e)
{
    TrackBarScrollEvent?.Invoke(sender, e);
}

READ ALSO
Полупрозрачный размытый фон с шумами

Полупрозрачный размытый фон с шумами

когда-то давно уже задавался этим вопросом, но без особых успеховРечь идёт о полупрозрачном размытом фоне, да ещё и с шумами(собственно как...

195
DbSet<T>.Add() vs DbSet<T>.AddAsync()

DbSet<T>.Add() vs DbSet<T>.AddAsync()

Есть отличная статья-ответ, которую наверное можно как некий справочник использовать когда необходимо освежить некоторые моменты в понимании...

216
Почему метод Contains для LinkedList&lt;T&gt; выдает False (C#)

Почему метод Contains для LinkedList<T> выдает False (C#)

Понял, что немножко протупил, забыв переопределить метод Equals (object obj)После этого все заработало

204
C# внешнее отображение полей класса

C# внешнее отображение полей класса

Вчера в голову пришла интересная мысльДопустим, у нас есть класс someObject:

222