Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
Kot_leopold
0 / 0 / 2
Регистрация: 22.06.2015
Сообщений: 27
1

Копирование датагрида в массив

16.10.2015, 09:10. Просмотров 423. Ответов 9
Метки нет (Все метки)

Помогите пожалуйста, как скопировать датагрид заполняемый динамически в массив?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.10.2015, 09:10
Ответы с готовыми решениями:

Как программно вызвать CellContentClick датагрида для нужной ячейки
В общем как в цикле правильно вызвать CellContentClick? Например, если цикл...

При наведении мыши на определенную ячейку датагрида показать тултип с комментарием
Как сделать чтобы при наведении мыши на определенную ячейку датагрида всплывал...

Проблема копирования из датагрида в датагрид
проблема следующая: когда в экселе копируешь некую область ячеек и вставляешь...

Копирование столбца из DataGridView. Копирование ячейки из ДатаГридВью
Доброго времени суток! Что то читал читал форумы и гугл - а так и не нашел для...

Копирование из одного массива в другой массив одного объекта
Пытаюсь скопировать дного массива в другой массив один объект, но не выходит....

9
Даценд
Модератор
Эксперт .NET
4163 / 3942 / 2611
Регистрация: 20.04.2015
Сообщений: 7,151
16.10.2015, 11:12 2
Цитата Сообщение от Kot_leopold Посмотреть сообщение
как скопировать датагрид заполняемый динамически в массив?
Можно подробней, как заполняется грид?
0
Kot_leopold
0 / 0 / 2
Регистрация: 22.06.2015
Сообщений: 27
16.10.2015, 12:00  [ТС] 3
он заполняется динамически. Это система голосования. Так когда карточка вставляется в микрофон, тогда появляется запись в гриде.
0
Даценд
Модератор
Эксперт .NET
4163 / 3942 / 2611
Регистрация: 20.04.2015
Сообщений: 7,151
16.10.2015, 12:06 4
Kot_leopold,
Ну так пусть лучше массив или какая-либо другая коллекция динамически заполняется, а затем выводится в грид.
0
Kot_leopold
0 / 0 / 2
Регистрация: 22.06.2015
Сообщений: 27
16.10.2015, 12:15  [ТС] 5
Дело в том, что я новичок еще и до конца не разобрался что там именно заполняется и как это переделать чтобы вся прога не полетела))
0
Даценд
Модератор
Эксперт .NET
4163 / 3942 / 2611
Регистрация: 20.04.2015
Сообщений: 7,151
16.10.2015, 12:33 6
Ну тогда хотя бы фрагмент грида с данными покажите.
0
Kot_leopold
0 / 0 / 2
Регистрация: 22.06.2015
Сообщений: 27
16.10.2015, 13:32  [ТС] 7
Вот этот фрагмент)
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
public delegate void UpdateAttendanceRegistrationData(SMDParticipantData participantInfo);
 
        public void LoadAttendanceRegistratioData(SMDParticipantData participantinfo)
        {
            if (this.InvokeRequired)
            {
                UpdateAttendanceRegistrationData obj = new UpdateAttendanceRegistrationData(LoadAttendanceRegistratioData);
                this.Invoke(obj, participantinfo);
            }
            else
            {
                if (participantinfo != null)
                {
 
                    DataTable participantInformation = new DataTable();
 
                    //this.headerControl.lblDate.Text = DateTime.Now.ToShortDateString().ToString(CultureInfo.InvariantCulture);
                    this.headerControl.lblTime.Text = DateTime.Now.ToShortTimeString().ToString(CultureInfo.InvariantCulture);
                    participantInformation = participantinfo.ParticipantApptendanceDetails.Copy();
                  //  this.headerControl.lblSubject.Text = Properties.Resources.AttendanceRegistrationTxtSubject;
                    this.headerControl.lblTimeLimit.Visible = false;
 
                    this.lblPresent.Text = /*Properties.Resources.AttendanceRegistrationTxtPresent*/ "Зарегестрировано:" + " " + participantinfo.ParticipantApptendanceDetails.Select("Attendance_Status = 'true'").Length.ToString();
                    //this.lblAbsent.Text = /*Properties.Resources.AttendanceRegistrationTxtAbsent*/"Зарегестриовано:" + " " + participantinfo.ParticipantApptendanceDetails.Select("Attendance_Status = 'false'").Length.ToString() + participantinfo.ParticipantApptendanceDetails.Select("Attendance_Status = 'true'").Length.ToString();
                    double kv_pres = Convert.ToDouble(participantinfo.ParticipantApptendanceDetails.Select("Attendance_Status = 'true'").Length.ToString());
                    double kv_abs = Convert.ToDouble(participantinfo.ParticipantApptendanceDetails.Select("Attendance_Status = 'false'").Length.ToString());
                    this.lblAbsent.Text = "Присутствуют:" + " " + Convert.ToString(kv_pres + kv_abs);
                    double kvorum = 0;
                    kvorum = (((kv_pres + kv_abs) * 60) / 100);
                    if ((kv_abs+kv_pres)<3)
                    {
                       // label1.Text = ("Не достаточно людей для кворума");
                        label1.Visible = false;
                    }
                    else
                    {
                        if ((kv_pres > kvorum))
                        {
                            label1.Visible = true;
                            label1.Text = ("Кворум имеется");
                            label1.ForeColor = Color.Green;
                        }
                        else
                        {
                            label1.Visible = true;
                            label1.Text = ("Кворум не имеется");
                            label1.ForeColor = Color.Red;
 
                        }
                    }
 
                    this.dgvAttendanceRegistration.DataSource = participantInformation;
                    while (dgvAttendanceRegistration.Rows.Count > 10)
                    {
                        dgvAttendanceRegistration.Rows.RemoveAt(10);
                    }
 
                    foreach (DataGridViewRow dgvRow in dgvAttendanceRegistration.Rows)
                    {
                        if (dgvRow.Cells["Attendance_Status"].Value.ToString() == "true")
                        {
                            dgvRow.DefaultCellStyle.ForeColor = Color.Green;
                        }
                        else if (dgvRow.Cells["Attendance_Status"].Value.ToString() == "false")
                        {
                            dgvRow.DefaultCellStyle.ForeColor = Color.Red;
                        }
                    }
                    if (this.dgvAttendanceRegistration.ColumnCount > 0)
                    {
                        if (this.dgvAttendanceRegistration.Columns.Contains("Participant_Id"))
                        {
                            this.dgvAttendanceRegistration.Columns["Participant_Id"].Visible = false;
                        }
                        if (this.dgvAttendanceRegistration.Columns.Contains("Attendance_Status"))
                        {
                            this.dgvAttendanceRegistration.Columns["Attendance_Status"].Visible = false;
                        }
                    }
                    this.dgvAttendanceRegistration.Refresh();
                }
            }
        }
0
Kot_leopold
0 / 0 / 2
Регистрация: 22.06.2015
Сообщений: 27
16.10.2015, 13:52  [ТС] 8
Копирование датагрида в массив
0
Даценд
Модератор
Эксперт .NET
4163 / 3942 / 2611
Регистрация: 20.04.2015
Сообщений: 7,151
16.10.2015, 13:59 9
Строки:
C#
1
DataTable participantInformation = new DataTable();
C#
1
participantInformation = participantinfo.ParticipantApptendanceDetails.Copy();
C#
1
this.dgvAttendanceRegistration.DataSource = participantInformation;
дают информацию, о том как добавляются данные в грид.
Можно попытаться разложить на строки DataTable participantInformation.
C#
1
DataRow[] rows = participantInformation.Select();
0
Kot_leopold
0 / 0 / 2
Регистрация: 22.06.2015
Сообщений: 27
16.10.2015, 14:09  [ТС] 10
Можешь пожалуйста провести пример) Просто моя задача вообще сравнить 2 грида и если там id не сходятся то добавить запись на другую форму)
я проще сам файл cs скину)AttendanceRegistrationForm.rar
0
16.10.2015, 14:09
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.10.2015, 14:09

Сумма датагрида
Привет ребята нужна помощь! У меня есть дата грид а там заложены данные и есть...

Заполнить лист из датагрида
Пытаюсь заполнить List из DataGridView (в нем лежит список яблок). Класс...

Соотнести размер Датагрида и Формы
Надо добиться следующего: если в Датагриде много колонок и колонки широкие, то...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru