BackgroundWorker nie pobiera wartosci z UI

Dyskusje na temat języka C# oraz biblioteki .NET
arti
Początkujący
Początkujący
Posty: 23
Dołączył(a): środa, 6 sierpnia 2014, 16:43

BackgroundWorker nie pobiera wartosci z UI

Post przez arti »

W jaki sposob przekazac wartosci z UI, a konkretnie radiobuttonow, do BackgroundWorker'a?
to moj kod workera:

Code: Zaznacz cały

private void Worker2()
{
    worker2.WorkerReportsProgress = true;
    worker2.WorkerSupportsCancellation = true;
    worker2.DoWork += (obj, ea) => installDrivers();
    worker2.ProgressChanged += new ProgressChangedEventHandler(progressReport);
    worker2.RunWorkerAsync();
}
a to metody ktora wykonuje:

Code: Zaznacz cały

public void installDrivers()
{
     //insDriverTxt();
    // worker2.ReportProgress(30);

    //copy desktop power profiles:
    if ((bool)Desktop.IsChecked)
    {
        DirectoryCopy("X:\\PowerProfiles\\Desktop", "C:\\Tools", true);
        worker2.ReportProgress(30);
    }
    //graphic cards:
    //geforce:
    if ((bool)geforce.IsChecked)
    { 
        DirectoryCopy("X:\\Drivers\\nVidia\\Graphics", "C:\\Tools\\Drivers\\nVidia\\Graphics", true);
        for (int i = 31; i < 40; i++)
        {
            Thread.Sleep(500);
            worker2.ReportProgress(i);
        }
        var geforce_install = Process.Start("C:\\Tools\\Drivers\\nVidia\\Graphics\\Setup.exe", "-n -s");
        geforce_install.WaitForExit();
        worker2.ReportProgress(40);
    }
}
Morfidon
Administrator
Administrator
Posty: 1332
Dołączył(a): wtorek, 5 sierpnia 2008, 21:48
Contact:

Re: BackgroundWorker nie pobiera wartosci z UI

Post przez Morfidon »

Nazwij RadioButton w XAML przy pomocy Name i przekaż zaznaczoną wartość przy pomocy operatora przypisania w kodzie?
Post Reply