【问题标题】:Center current cell view on datagridview c#在datagridview c#上居中当前单元格视图
【发布时间】:2018-09-25 10:04:05
【问题描述】:

如何在 datagridview 中选择当前单元格的中心视图?

例如我有这样的datagridview:

 for (int i = 0; i < 200; i++)
            {

                dataGridView1.Columns.Add("X" + i, "X" + i);
                dataGridView1.Columns[i].Width = 30;
                this.dataGridView1.Columns[i].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft;
                dataGridView1.Rows.Add("Y" + i);
                //  dataGridView1.Rows[i].Cells[i].Value = "X";
                dataGridView1.DefaultCellStyle.SelectionBackColor = Color.HotPink;
                dataGridView1.DefaultCellStyle.BackColor = Color.Red;
            }


            for (int kolumna = 0; kolumna < 200; kolumna++)
            {
                for (int i = 1; i < 200; i++)
                {
                    dataGridView1.Rows[kolumna].Cells[i].Value = "X";
                }
            }

看起来像:

如何在我的 datagridview 中居中当前选定的单元格? 我搜索了很多,找不到解决方案。 例如我想选择行/单元格 100/100。

我试试

this.dataGridView1.CurrentCell = this.dataGridView1[100,100];

但它只显示在我的 datagridview 的右下方。

结果应该是这样的: CELL [100/row100] 以 datagridview 中的视图为中心。 有可能吗?

【问题讨论】:

  • 有人可以帮忙吗

标签: c# datagridview center


【解决方案1】:
 private void dataGridView1_SelectionChanged(object sender, EventArgs e)
        {
            try
            {
                dataGridView1.FirstDisplayedScrollingRowIndex = selectedrow - 9;
                dataGridView1.FirstDisplayedScrollingColumnIndex = selectedcolumn - 15;
            }
            catch { };
        }

一切皆有可能。当所选行发生更改时,此事件将您的 datagrdivew 居中。

【讨论】:

    猜你喜欢
    • 2013-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-24
    • 1970-01-01
    • 2014-01-12
    • 1970-01-01
    相关资源
    最近更新 更多