c#如何使用线程操作datagridview

2025-03-23 05:11:31
推荐回答(2个)
回答1:

public delegate void Handler(FlexCell.Grid param1, int param2);

///


/// 锁定行(供线程内部使用)
///

/// 需要锁定的Flex控件
/// 需要锁定的行
public static void lockCell(FlexCell.Grid cellGrid, int row)
{
//EventHandler ehLockCell = new EventHandler(flexCell_Lock);
//ehLockCell(this, null);
if (cellGrid.InvokeRequired)
{
//Handler handlock = new Handler(lockCell);
cellGrid.Invoke(new Handler(lockCell), new object[] { cellGrid, row });

}
else
{
lock (cellGrid)
{
//FlexCell.Grid cellBanlance = (FlexCell.Grid)tabBalance.TabPages["2008"].Controls[0];
cellGrid.Row(row).Locked = true;
cellGrid.Range(row, 2, row, cellGrid.Cols - 1).BackColor = AppHelper.MatchColorScheme(6);
}
}
}

回答2:

用delegate
创建一个thread,然后用invoke调用delegate对应的函数