C# 如何更改我的代码?
C# How to change my code?
在文本框中写入所需的字词。我想要多行......但是,通过这段代码我只选择了一行......
我想输出到屏幕行.. 而不是绘制,我只想显示指定的行(与文本框的文本匹配)。如何实现?
try
{
dataGridView1.ClearSelection(); //or restore rows backcolor to default
for (int i = 0; i < (dataGridView1.Rows.Count); i++)
{
for (int j = 0; j < (dataGridView1.Columns.Count); j++ )
if (dataGridView1.Rows[i].Cells[j].Value.ToString().StartsWith(txbSearchName.Text, true, CultureInfo.InvariantCulture))
//(dataGridView1.Rows[i].Cells[j].Value.ToString().StartsWith(txbSearchName.Text, true, CultureInfo.InvariantCulture))
{
dataGridView1.FirstDisplayedScrollingRowIndex = i;
dataGridView1.Rows[i].Selected = true; //It is also possible to color the row backgroud
return;
}
}
}
catch (Exception)
{
MessageBox.Show("not exist");
}
如果您想根据搜索框过滤数据,那么您应该将数据放入 datatable
并过滤 dataview
并将 dataview
绑定到 datagridview
. (您可以在 here and here 了解)
但是,如果您想更改当前代码,则应删除 return
,因为它将 return 从该行中删除,并且不会与其他行匹配
try
{
dataGridView1.ClearSelection(); //or restore rows backcolor to default
for (int i = 0; i < (dataGridView1.Rows.Count); i++)
{
for (int j = 0; j < (dataGridView1.Columns.Count); j++ )
if ((dataGridView1.Rows[i].Cells[j].Value.ToString().StartsWith(txbSearchName.Text, true, CultureInfo.InvariantCulture)) == false)
//(dataGridView1.Rows[i].Cells[j].Value.ToString().StartsWith(txbSearchName.Text, true, CultureInfo.InvariantCulture))
{
//dataGridView1.FirstDisplayedScrollingRowIndex = i;
//dataGridView1.Rows[i].Selected = true; //It is also possible to color the row backgroud
//return;
dataGridView1.Rows.Remove(dataGridView1.Rows[i]);
}
}
}
catch (Exception)
{
MessageBox.Show("not exist");
}
在文本框中写入所需的字词。我想要多行......但是,通过这段代码我只选择了一行...... 我想输出到屏幕行.. 而不是绘制,我只想显示指定的行(与文本框的文本匹配)。如何实现?
try
{
dataGridView1.ClearSelection(); //or restore rows backcolor to default
for (int i = 0; i < (dataGridView1.Rows.Count); i++)
{
for (int j = 0; j < (dataGridView1.Columns.Count); j++ )
if (dataGridView1.Rows[i].Cells[j].Value.ToString().StartsWith(txbSearchName.Text, true, CultureInfo.InvariantCulture))
//(dataGridView1.Rows[i].Cells[j].Value.ToString().StartsWith(txbSearchName.Text, true, CultureInfo.InvariantCulture))
{
dataGridView1.FirstDisplayedScrollingRowIndex = i;
dataGridView1.Rows[i].Selected = true; //It is also possible to color the row backgroud
return;
}
}
}
catch (Exception)
{
MessageBox.Show("not exist");
}
如果您想根据搜索框过滤数据,那么您应该将数据放入 datatable
并过滤 dataview
并将 dataview
绑定到 datagridview
. (您可以在 here and here 了解)
但是,如果您想更改当前代码,则应删除 return
,因为它将 return 从该行中删除,并且不会与其他行匹配
try
{
dataGridView1.ClearSelection(); //or restore rows backcolor to default
for (int i = 0; i < (dataGridView1.Rows.Count); i++)
{
for (int j = 0; j < (dataGridView1.Columns.Count); j++ )
if ((dataGridView1.Rows[i].Cells[j].Value.ToString().StartsWith(txbSearchName.Text, true, CultureInfo.InvariantCulture)) == false)
//(dataGridView1.Rows[i].Cells[j].Value.ToString().StartsWith(txbSearchName.Text, true, CultureInfo.InvariantCulture))
{
//dataGridView1.FirstDisplayedScrollingRowIndex = i;
//dataGridView1.Rows[i].Selected = true; //It is also possible to color the row backgroud
//return;
dataGridView1.Rows.Remove(dataGridView1.Rows[i]);
}
}
}
catch (Exception)
{
MessageBox.Show("not exist");
}