Установка состояния флажка в соответствии со столбцом в gridview - PullRequest
0 голосов
/ 25 мая 2018

Мне было просто интересно, как поставить или снять флажок в соответствии со значением True или False в GridView.Аналогично записи значения в TextBox

textBox1.Text = dataGridView1.SelectedRows[0].Cells[0].Value.ToString();

, но для

checkBox1.Text = dataGridView1.SelectedRows[0].Cells[0].Value.ToString();

, если True = Tick, если False = Untick

Ответы [ 3 ]

0 голосов
/ 25 мая 2018

Вам необходимо преобразовать результат в логическое значение.В Gridview.CellValueChangedEvent добавьте код

checkBox1.Checked = (dataGridView1.SelectedRows[0].Cells[0].Value.ToString().ToUpper() == "TRUE");
0 голосов
/ 25 мая 2018
bool isChecked;
bool.TryParse(dataGridView1.SelectedRows[0].Cells[0].Value.ToString(), out isChecked);
checkBox1.Checked = isChecked;

Это означает, что если ваша строка когда-либо изменится на "True" или "true", она все равно сможет проанализировать ее как логическое значение, вместо того, чтобы просто проверять строку на "TRUE", которая может легко сломаться далеелиния.

0 голосов
/ 25 мая 2018
checkBox1.Checked = true;

или

checkBox1.Checked = false;

Полный код будет выглядеть примерно так:

if (dataGridView1.SelectedRows[0].Cells[0].Value.ToString() == "TRUE")
{
    checkBox1.Checked = true;
} 
else if(dataGridView1.SelectedRows[0].Cells[0].Value.ToString() == "FALSE")
{
    checkBox1.Checked = false;
}

Вы не можете сделать код, который вы написали, потому что данные, которые вы извлекли из сетки данныхview - это строка, и .Checked требует логического значения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...