Member 12245539 Ответов: 2

Как получить проверку в datagridview при выборе combobox winform C#


У меня есть один Combobox, он имеет некоторую ценность. И один элемент управления datagridview и datagridview имеет два флажка столбца, то есть для выбора, а другой-для элементов. При загрузке события datagridview отображаются все значения. Теперь я хочу проверить только те строки при выборе из combobox. Значение выводится из SQL Server.

Пожалуйста, помогите немного!!

Спасибо

Что я уже пробовал:

---------------------------------------------------

2 Ответов

Рейтинг:
6

Karthik_Mahalingam

попробуй вот так
Добавьте ячейку Checkboxcell из конструктора.

private void Form1_Load(object sender, EventArgs e)
       {
           DataTable dt = new DataTable();

           dt.Columns.Add("Column2");
           dt.Rows.Add( "one");
           dt.Rows.Add( "two");
           dt.Rows.Add( "three");
           dt.Rows.Add( "four");

           dataGridView1.DataSource = dt;
           comboBox1.DisplayMember = "Column2";
           comboBox1.ValueMember = "Column2";
           comboBox1.DataSource = dt;

       }

       private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
       {
           string value = comboBox1.SelectedValue.ToString();
           foreach (DataGridViewRow row in dataGridView1.Rows)
           {
               var cell = row.Cells[0] as DataGridViewCheckBoxCell;
               cell.Value = false;
               if (Convert.ToString(row.Cells[1].Value) + "" == value)
                   cell.Value = true;


           }
       }


Member 12245539

Дорогой Картик, он работает отлично. Из-за моей ошибки я должен немного обновить свой вопрос. Существует два Datagridview на одной и той же winform первый в имени DataGridview_toSelect и второй в имени DataGridview_AfterSelect

DataGridview_toSelect имеет два столбца, т. е. проверить & элементы и в DataGridview_AfterSelect только один comlumn т. е. элементы

Я хочу отметить check in DataGridview_toSelect только те, которые появляются в DataGridview_AfterSelect при нажатии кнопки. Пожалуйста, скажи мне!!

Karthik_Mahalingam

я не получаю последние 2 строки.
можете ли вы предоставить более подробную информацию
что такое нажатие кнопки.?

Member 12245539

нажатие кнопки означает!
Код будет работать на button1_click_event... потому что там тоже присутствует одна кнопка управления.

Karthik_Mahalingam

при нажатии кнопки, что именно вы хотите выполнить.

Member 12245539

Босс, оставь это. Вы читаете только это...

Я должен немного обновить свой вопрос. Существует два Datagridview на одной и той же winform первый в имени DataGridview_toSelect и второй в имени DataGridview_AfterSelect

DataGridview_toSelect имеет два столбца, т. е. проверить & элементы и в DataGridview_AfterSelect только один comlumn т. е. элементы

Я хочу отметить check in DataGridview_toSelect только те, которые появляются в DataGridview_AfterSelect

Karthik_Mahalingam

ладно, круто.

Karthik_Mahalingam

попробовать это

частный недействительными обработчика button1_click(объект отправителя, EventArgs в электронной)
{
по каждому элементу (элемент ячейки datagridviewrow в DataGridview_AfterSelect.Строк)
{
строковое значение = элемент.Ячейки[0].Значение.Метод toString();
по каждому элементу (ячейки datagridviewrow Row в DataGridview_toSelect.Строк)
{
var cell = строка.Ячейки[0] как DataGridViewCheckBoxCell;
если (преобразовать.ToString(row. Cells[1]. Value) + "" = = value)
ячейка.Значение = true;


}
}
}

Member 12245539

Произошла ошибка. Ссылка на объект не установлена на экземпляр объекта

код приведен ниже.


по каждому элементу (элемент ячейки datagridviewrow в DataGridview_AfterSelect.Строк)
{
строковое значение = элемент.Ячейки[0].Значение.Метод toString();
по каждому элементу (ячейки datagridviewrow Row в DataGridview_toSelect.Строк)
{
var cell = строка.Ячейки[0] как DataGridViewCheckBoxCell;
если (преобразовать.ToString (row.Cells[1].Value) + "" == value) ячейка.Значение = true;
}
}

Karthik_Mahalingam

попробовать это

по каждому элементу (элемент ячейки datagridviewrow в DataGridview_AfterSelect.Строк)
{
строковое значение = преобразовать.Метод toString(пункт.Ячейки[0]. Значение);
if (! string.IsNullOrWhiteSpace(значение))
по каждому элементу (ячейки datagridviewrow Row в DataGridview_toSelect.Строк)
{
var cell = строка.Ячейки[0] как DataGridViewCheckBoxCell;
если (преобразовать.ToString (row.Cells[1].Value) + "" == value) ячейка.Значение = true;
}
}

Karthik_Mahalingam

убедитесь, что первый столбец является ячейкой флажка в сетке DataGridview_toSelect

Member 12245539

Огромное спасибо!
теперь это осуществимо.....

Karthik_Mahalingam

крутой,
:)

Member 12245539

Босс, не могли бы вы пожалуйста помочь мне??


Существует один Datagridview. Он имеет три колонки, такие как

FruitId | FruitPrice | FruitName
1 | 100 |
2 | 200 |
3 | 300 |

эти значения берутся из table_FruitPrice
Теперь, наконец, я хочу отобразить в третьем столбце FruitName его FruitId, который представлен в первом столбце, и FruitName будет исходить из Table_FruitName.

метод соединения может работать, и он работает. Но я хочу отобразить Fruitname в третьем столбце, если я нажму на кнопку.

Пожалуйста, сэр, помогите...

Karthik_Mahalingam

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

Member 12245539

Хорошо Сэр

Рейтинг:
2

nilesh sawardekar

Вы можете использовать for loop и if else condition, чтобы найти свое совпадение,а затем использовать приведенный ниже код для проверки флажка.

dgvDetails.Rows(intRow).Cells("chk").Value = CheckState.Checked


выше код находится в vb.net. преобразуйте его в c#.net


Member 12245539

Это не работает.