selectedrow对于两个datagridview是相同的
本文关键字:datagridview 于两个 selectedrow | 更新日期: 2023-09-27 17:50:18
我有一个有两个标签页的标签控件。
每一个都有一个datagridview。
它们具有相同的绑定源。
我有一个同步选择的问题。
现在,我有:
private void dgvGeoObjectsSecondView_SelectionChanged(object sender, EventArgs e)
{
if (tabControl1.SelectedIndex == 1)
{
foreach (DataGridViewRow dvRow in this.dgvGeoObjectsSecondView.Rows)
{
foreach (DataGridViewRow dvRowFirstView in this.dgvGeoObjectsFirstView.Rows)
{
if ((long) ((DataRowView) dvRow.DataBoundItem)["ObiektID"] ==
(long) ((DataRowView) dvRowFirstView.DataBoundItem)["ObiektID"])
dvRowFirstView.Selected = dvRow.Selected;
}
}
}
}
private void dgvGeoObjectsFirstView_SelectionChanged(object sender, EventArgs e)
{
if (tabControl1.SelectedIndex==0)
{
foreach (DataGridViewRow dvRow in this.dgvGeoObjectsFirstView.Rows)
{
foreach (DataGridViewRow dvRowSecondView in this.dgvGeoObjectsSecondView.Rows)
{
if ((long)((DataRowView)dvRow.DataBoundItem)["ObiektID"] ==
(long)((DataRowView)dvRowSecondView.DataBoundItem)["ObiektID"])
dvRowSecondView.Selected = dvRow.Selected;
}
}
}
}
但是,当我改变选项卡时,第二个网格中的selectedrows正在清除。
对于这个问题有什么想法或经验吗?这可能是因为绑定在控件首次变为可见之前是不起作用的。解决方法是使第二个网格暂时可见。