• Ремонт автомобилей к месту расположения автомобиля

  • Без выходных с 8:00 до 19:00

  • Ремонт, автомобилей.

  • Компьютерная электронных блоков автомобилей.

  • Ремонт автомобилей.

  • Прошивка безопасности.

  • Замена, ( мозги ) двигателя.

  • Корректировка приборов.

  • сажевого фильтра .

  • магнитолы, навигации.

  • автомобилей.

Все уроки

************************Посмотреть*****************************

Скачать проект

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;

namespace MultiThreadTest
{
    class Worker
    {
        private bool _cancelled = false;
        public void Cancel()
        {
            _cancelled = true;
        }
        public void Work()
        {
            for (int i = 0; i <= 100; i++)
            {
                if (_cancelled)
                    break;
                Thread.Sleep(50);
                ProgressChanged(i);
            }
            WorkCompleted(_cancelled);
        }
        public event Action<int> ProgressChanged;
        public event Action<bool> WorkCompleted;
    }
}

////////////////////////////////////////////////////////////////////////////////////////

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace MultiThreadTest
{
    public partial class Form1 : Form
    {
        private Worker _worker;
        public Form1()
        {
            InitializeComponent();
            butStart.Click += butStart_Click;
            butStop.Click += butStop_Click;
        }

        private void butStop_Click(object sender, EventArgs e)
        {

        }

        private void butStart_Click(object sender, EventArgs e)
        {
            _worker = new Worker();
            _worker.ProgressChanged += _worker_ProgressChanged;
            _worker.WorkCompleted += _worker_WorkCompleted;
            butStart.Enabled = false;
            _worker.Work();
        }

        void _worker_WorkCompleted(bool cancelled)
        {
            string message=cancelled?"Процесс отменен":"Процесс завершен";
            MessageBox.Show(message);
            butStart.Enabled = true;
        }

        void _worker_ProgressChanged(int progress)
        {
            progressBar.Value=progress;
        }
    }
}

*****************************Invoke*************************

Скачать проект

class Worker
{
    private bool _cancelled;
    public void Cancel()
    {
        _cancelled = true;
    }
    public void Work()
    {
        for (int i = 0; i <= 100; i++)
        {
            if (_cancelled)
                break;
            Thread.Sleep(50);
            ProgressChanged(i);
        }
        WorkCompleted(_cancelled);
    }
    public event Action<int> ProgressChanged;
    public event Action<bool> WorkCompleted;
}

/////////////////////////////////////////////////////////

public partial class Form1 : Form
{
    private Worker _worker;
    public Form1()
    {
        InitializeComponent();
        butStart.Click += butStart_Click;
        butStop.Click += butStop_Click;
    }

    private void butStop_Click(object sender, EventArgs e)
    {
        if (_worker != null)
        {
            _worker.Cancel();
        }
    }

    private void butStart_Click(object sender, EventArgs e)
    {
        _worker = new Worker();
        _worker.ProgressChanged += _worker_ProgressChanged;
        _worker.WorkCompleted += _worker_WorkCompleted;
        butStart.Enabled = false;
        Thread thread=new Thread(_worker.Work);
        thread.Start();
    }

    void _worker_WorkCompleted(bool cancelled)
    {
        Action action = () =>
        {
            string message = cancelled ? "Процесс отменен" : "Процесс завершен";
            MessageBox.Show(message);
            butStart.Enabled = true;
        };
        if (InvokeRequired)
            Invoke(action);
        else
            action();
    }

    void _worker_ProgressChanged(int progress)
    {
        Action action = () =>
        {
            progressBar.Value += 1;
            progressBar.Value = progress;
        };
        if (InvokeRequired)
            Invoke(action);
        else
            action();
    }
}

 

************************Посмотреть*****************************

Скачать проект

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Threading;

namespace MultiThreadTest
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            butStart.Click += butStart_Click;
            butStop.Click += butStop_Click;

            worker.DoWork += worker_DoWork;
            worker.ProgressChanged += worker_ProgressChanged;
            worker.RunWorkerCompleted += worker_RunWorkerCompleted;
        }

        void worker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            string message = e.Cancelled ? "Процесс отменен" : "Процесс завершен";
            MessageBox.Show(message);
            butStart.Enabled = true;
        }

        void worker_ProgressChanged(object sender, ProgressChangedEventArgs e)
        {
            progressBar.Value = e.ProgressPercentage+1;
            progressBar.Value = e.ProgressPercentage;
        }

        void worker_DoWork(object sender, DoWorkEventArgs e)
        {
            for (int i = 0; i <= 99; i++)
            {
                if (worker.CancellationPending)
                {
                    e.Cancel = true;
                    break;
                }
                worker.ReportProgress(i);
                Thread.Sleep(50);
            }
        }

        private void butStop_Click(object sender, EventArgs e)
        {
            worker.CancelAsync();
        }

        private void butStart_Click(object sender, EventArgs e)
        {
            butStart.Enabled = false;
            worker.RunWorkerAsync();
        }
    }
}

Работы

Мы занимаемся только ремонтом автомобилей.