HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
 
 
Опции темы Поиск в этой теме Опции просмотра

Заполнение контрола данными в отдельном потоке
  #1  
Старый 17.06.2009, 13:10
ZneP
Познающий
Регистрация: 07.11.2006
Сообщений: 59
С нами: 10268158

Репутация: 11
По умолчанию Заполнение контрола данными в отдельном потоке

Добрый день!

Хочу сделать заполнение контрола ListBox данными из БД в отдельном потоке.

вот код:

Код:
namespace Thread
{
    public partial class Form1 : Form
    {
        DataSet ds = new DataSet();

        OleDbConnection conn = new OleDbConnection();
        OleDbDataAdapter data = new OleDbDataAdapter();

        public void FillData()
        {
            conn = new OleDbConnection("...");

            data = new OleDbDataAdapter("...", conn);

            ds.Tables["list"].Clear();
            data.Fill(ds.Tables["list"]);
        }

        public Form1()
        {
            InitializeComponent();

            ds.Tables.Add("list");

            listBox1.DataSource = ds.Tables["list"];
            listBox1.DisplayMember = "p_name";
        }

        private void button1_Click(object sender, EventArgs e)
        {
            System.Threading.Thread th = new System.Threading.Thread(new System.Threading.ThreadStart(FillData));
            th.Start();
        }
    }
}
DataSet в отдельном потоке заполняется нормально, но контрол не обновляется. Какую функцию у контрола необходимо вызвать, чтобы он отображал новые данные из DataSet?
 
Ответить с цитированием
 





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.