gpt4 book ai didi

C# DataGridView如何照亮当前List

转载 作者:行者123 更新时间:2023-11-30 17:33:56 24 4
gpt4 key购买 nike

我想强调目前正在 datagridview 上实现的方法。

这是列表:

  public List<Action> functions = new List<Action>();

在里面我有一个方法。例如,通过添加。

functions.Add(waypoint1);

添加方法后我的 datagridview 如下所示:

enter image description here

我只想突出显示当前航路点。

开始列表我使用:

foreach (Action func in functions)
{
func();
}

例如,当当前激活 func() 数字 2 时,只需突出显示第二行。当前激活 func() 数字 3 时,只需突出显示第 3 行。我搜索了论坛但没有找到解决方案。请新手耐心等待。谢谢。

编辑 1:根据需要在backgroundworker中添加foreach循环的代码。

private void DoWork_backgroundworker(object sender, DoWorkEventArgs e)
{
while (true)
{
foreach (Action func in functions)
{
func();
}
}
}

开始按钮:

private void metroButton7_Click(object sender, EventArgs e)
{
DoWork_backgroundworker.RunWorkerAsync();
}

最佳答案

如果您可以使用 Selected 属性来突出显示,您可以使用普通的 for 循环(这将为您提供索引器)并索引属于项目的行.简单地将 RowSelected 属性设置为 true:

for (int i = 0; i < functions.Count; i++)
{
//select the row before action is started
dataGridView1.Rows[i].Selected = true;

// execute your action
functions[i]();

//unselect the row when job is finished
dataGridView1.Rows[i].Selected = false;

}

编辑:

如果要更改选择/突出显示颜色,请使用 dataGridView1.RowsDefaultCellStyle.SelectionBackColor 属性。将此行放在 for 循环之前:

dataGridView1.RowsDefaultCellStyle.SelectionBackColor = System.Drawing.Color.Black; 

关于C# DataGridView如何照亮当前List<Action>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43085907/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com