Strona 1 z 1

BackgroundWorker nie pobiera wartosci z UI

Napisane: poniedziałek, 1 września 2014, 14:17
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);
    }
}

Re: BackgroundWorker nie pobiera wartosci z UI

Napisane: poniedziałek, 1 września 2014, 14:47
przez Morfidon
Nazwij RadioButton w XAML przy pomocy Name i przekaż zaznaczoną wartość przy pomocy operatora przypisania w kodzie?