Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / WinForms, .Net Framework Новый топик    Ответить
 Вкл чекбокса в датагрид C#  [new]
SAS2014
Member

Откуда: Сталинград
Сообщений: 2830
Помогите плиз с такой проблемой как на основание значения в ячеек определенной колонки gridview, вставлять туда активный чекбокс, иначе не активный чекбокс?????

например в ячейки есть 0 тогда чексбокс вкл
если 1 то выкл

private void button4_Click(object sender, EventArgs e) // Заполнить gridview данными
        {
            ///
            this.pPOM_USERTableAdapter.Fill(this.dataSet2.PPOM_USER);
            label4.Text = this.dataSet2.ToString();
           
            
            
           foreach (DataGridViewRow row in dataGridView2.Rows)
          {
               //pSTATUSDataGridViewTextBoxColumn

              string s = row.Cells.ToString();
              MessageBox.Show(s);
              
             //     row.Cells["pSTATUSDataGridViewTextBoxColumn"].Value = true;

              }


        }
25 май 18, 09:50    [21439037]     Ответить | Цитировать Сообщить модератору
 Re: Вкл чекбокса в датагрид C#  [new]
Cat2
Member

Откуда: Petroskoi, Karjala
Сообщений: 145675
SAS2014,

Через вычисляемое поле можно
25 май 18, 10:46    [21439279]     Ответить | Цитировать Сообщить модератору
 Re: Вкл чекбокса в датагрид C#  [new]
SAS2014
Member

Откуда: Сталинград
Сообщений: 2830
Подскажите, что нужно написать, чтобы в первом условии создался чекбокс (DataGridViewCheckBoxColumn) в ячейки с галкой
а во втором без галки


 private void button5_Click(object sender, EventArgs e) // test добавление чекбоксов по статусами

        {
            
            string status = dataGridView2.CurrentCell.Value.ToString();
            int active = 1;
            int t=System.Convert.ToInt32(status); // конвертация из текста в числовой
              if ( t < active)
                     {
                          MessageBox.Show("Активный");

                          //DataGridViewCheckBoxColumn


                          
                          

                     }
                             else 
                                  {
                                    MessageBox.Show("Не активный"); 

                                  }
           
        }

Это первая чать

А вторая часть надо будет через цикл foreach прогнать весь столбец с теми ячейкаи в которых надо установить чекбокс
28 май 18, 09:34    [21445284]     Ответить | Цитировать Сообщить модератору
 Re: Вкл чекбокса в датагрид C#  [new]
наутилус
Member

Откуда: UA
Сообщений: 1263
SAS2014,

что-то вы не то мудрите. вам надо просто создать столбец DataGridViewCheckBoxColumn. а потом уже "выставлять галочки". т.е. создание должно быть ДО цикла по записям.
я вот так делал:
            checkColumn = new DataGridViewCheckBoxColumn
            {
                DataPropertyName = "Ext",
                Name = "Ext",
                HeaderText = @"Зовн",
                Width = 30,
                Visible = true,
                DisplayIndex = 4,
                ReadOnly = true
            };
            this.dgvKadrList.Columns.Add(checkColumn);
28 май 18, 14:57    [21446932]     Ответить | Цитировать Сообщить модератору
 Re: Вкл чекбокса в датагрид C#  [new]
SAS2014
Member

Откуда: Сталинград
Сообщений: 2830
Что нужно изменить\добавить чтобы chk попадало по очереди значения 2 столбца?

private void button5_Click(object sender, EventArgs e)
{
          
  string status = pSTATUSDataGridViewTextBoxColumn.DataGridView.CurrentCell.Value.ToString();


        foreach (int chk in status)

           {

           int t = System.Convert.ToInt32(chk);
           MessageBox.Show(chk.ToString());
 
           }
}


т.е. выдавал мне в мессажес значение (текст) каждой ячейки определенного столбца
1 июн 18, 09:28    [21459786]     Ответить | Цитировать Сообщить модератору
 Re: Вкл чекбокса в датагрид C#  [new]
наутилус
Member

Откуда: UA
Сообщений: 1263
SAS2014,
какой же у вас цикл? откуда в status будет массив, если вы одно значение берёте??

for(int row = 0;row<dgvGridView,Rows.Count;row++)
{
   MessageBox.Show(dgvGridView["YourColumnName", row].Value.ToString());
} 
1 июн 18, 10:54    [21460127]     Ответить | Цитировать Сообщить модератору
 Re: Вкл чекбокса в датагрид C#  [new]
SAS2014
Member

Откуда: Сталинград
Сообщений: 2830
Сижу думаю что не так, подскажите?

К сообщению приложен файл. Размер - 33Kb
6 июн 18, 04:48    [21471453]     Ответить | Цитировать Сообщить модератору
 Re: Вкл чекбокса в датагрид C#  [new]
SAS2014
Member

Откуда: Сталинград
Сообщений: 2830
нужно просто чтобы чебокс получил значение true
6 июн 18, 04:49    [21471454]     Ответить | Цитировать Сообщить модератору
Все форумы / WinForms, .Net Framework Ответить