Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 18.10.2013
Сообщений: 5

DataGrid и DataSet и .Net compact

18.10.2013, 08:27. Показов 1775. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!
C C# не знаком, но нужно написать простую программулину.
Такая проблема!
Есть:
DataGrid.DataSource = DataSet.Table[0].DefaultView;

Не получается:
Если я добавляю или удаляю строки из DataSet при нажатии кнопки на форме - то в DataGrid все отображается нормально. Т.е. срабатывает какое то событие которое перерисовывает DataGrid я так понял.
C#
1
2
3
4
button1_click(...)
{
     DataSet.Tables[0].Rows.Add( Row);
}
А если в теле потока(Thread), то у меня не перерисовывается, хотя DataSource изменяется
C#
1
2
3
4
5
6
7
Thread T = new Thread( addFunc );
T.Start();
 
void addFunc()
{
     DataSet.Tables[0].Rows.Add( Row );
}
Что нужно сделать что бы этот гребаный DataGrid перерисовался/переинициализировался соответственно своему DataSource?!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.10.2013, 08:27
Ответы с готовыми решениями:

Как изменить ширину самой первой колонки выбора строки в DataGrid (.NET Compact Framework)?
Имеется заполненная DataGrid, которая чуточку не влезает на экран! Вопрос: Как можно уменьшить ширину неиспользуемой колонки выбора строки?

Как изменить ширину столбца DataGrid при импорте с БД в .NET Compact Framework
имеется вот такой вот код импорта таблицы из БД в DataGrid private string ConnectString() { string connectionString; ...

Связывание DataGrid и DataSet
Разбираюсь с WPF....возникают трудности на каждом шагу.....:cry: Объясните, пожалуйста, как связать DataGrid и DataSet? На форме есть...

7
Неадекват
 Аватар для freeba
1501 / 1237 / 248
Регистрация: 02.04.2010
Сообщений: 2,807
18.10.2013, 09:43
Цитата Сообщение от Zimen Посмотреть сообщение
Что нужно сделать что бы этот гребаный DataGrid перерисовался/переинициализировался соответственно своему DataSource?!
Он всегда соответствует своему DataSource. Вы вносите изменение в таблицу, но не отражаете его в DataView, соответственно грид не меняется.
0
0 / 0 / 0
Регистрация: 18.10.2013
Сообщений: 5
18.10.2013, 11:05  [ТС]
Эммм... Не совсем понял. Как отразить?

Добавлено через 3 минуты
Допустим DataSet у меня поменялся и соответствует действительности. А на экране табличка(DataGrid) не меняется.
Тупо DataGrid.DataSource = DataSet.Table[0] не прокатывает. Как мне это реализовать?

Добавлено через 1 минуту
Можно кусок кода?
0
0 / 0 / 0
Регистрация: 18.10.2013
Сообщений: 5
21.10.2013, 05:21  [ТС]
А как внести изменения в DataView? Точнее как его переинициализировать?
0
114 / 112 / 62
Регистрация: 15.03.2013
Сообщений: 561
Записей в блоге: 5
21.10.2013, 07:56
Все работает даже из другого потока. Грид сам обновляется. Возможно строку неправильно добавляете.
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
using System;
using System.Windows.Forms;
using System.Data;
using System.Threading;
 
namespace WindowsFormsApplication1
{
 
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        DataSet DSet;
        DataTable a;
        private void Form1_Load(object sender, EventArgs e)
        {
 
            DSet = new DataSet();
            a = new DataTable("newbase");
            DSet.Tables.Add(a);
            dataGridView1.DataSource = DSet.Tables["newbase"];
            a.Columns.Add("xc1");
            a.Columns.Add("xc2");
            a.Columns.Add("xc3");
 
            DataRow xc = a.NewRow();
            xc[0] = "11111";
            xc[2] = "22222";
            a.Rows.Add(xc);
 
            Thread vb = new Thread(addFunct);
            vb.Start();
 
        }
        void addFunct()
        {
            DataRow xc = a.NewRow();
            xc[0] = "33333";
            xc[2] = "44444";
            a.Rows.Add(xc);
        }
    }
}


P.S. Для админов.Хотел код спрятать под споллер, но он упорно не хочет открываться из под него.
0
0 / 0 / 0
Регистрация: 18.10.2013
Сообщений: 5
21.10.2013, 08:40  [ТС]
Вот как у меня.

При инициализации:
C#
1
myDataGrid.DataSource = DB.Tables["DB"];
При обмене:
C#
1
2
3
4
5
6
7
8
9
DataRow Row = DB.Tables["DB"].NewRow();
 
try
   {
   Row["ШтрихКод"] = From1C.Tables[0].Rows[i]["ШтрихКод"];
   Row["Оплачен"]  = From1C.Tables[0].Rows[i]["Оплачен"];
   DB.Tables["DB"].Rows.Add(Row);
   }
catch { False = true; }
DataGrid не обновляется. Если двинуть/щелкнуть ползунок. То DataGrid перерисовывается.

Добавлено через 5 минут
ЯЩЮР

А DataGridView1 у вас кого типа? DataGridView или DataGrid? Первый вариант в .Net Compact нельзя использовать.
0
114 / 112 / 62
Регистрация: 15.03.2013
Сообщений: 561
Записей в блоге: 5
21.10.2013, 12:30
Ссори , просмотрел , что речь о .Net Compact .И да у меня datagridview
0
0 / 0 / 0
Регистрация: 18.10.2013
Сообщений: 5
22.10.2013, 09:31  [ТС]
UP. Вопрос все еще актуален.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.10.2013, 09:31
Помогаю со студенческими работами здесь

DataSet + DataGrid отсутствие вывода
Имеется файл конфигурации App.Config <?xml version="1.0" encoding="utf-8" ?> <configuration> <connectionStrings> ...

Взаимодействие DataSet и DataGrid WPF
Имеется DataSet с набором таблиц базы данных SQL-server. как заполнить DataGrid (wpf) данными из определенной таблицы?

Замена WebClient в .NET Compact Framework
Я использую WebClient для авторизации при помощи куки на веб-сервисе, но в Compact Framework WebClient не поддерживается. class...

.NET Compact Framework и поворот формы
Возникли некоторые трудности при разработке приложения под Windows Mobile 6. По плану, при повороте экрана на 90 градусов, форма должна...

Как обновлять данные DataSet и DataGrid
Всем приветь! Возникла проблема, не знаю как решать! DataSet ds = new DataSet(); public Form1() { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru