提问人:Egedi Rikárdó 提问时间:11/7/2023 更新时间:11/7/2023 访问量:44
DataGridViewButton列插入弄乱了我的 DataGridView 顺序
DataGridViewButtonColumn insertion messes up my DataGridView order
问:
我创建了一个功能齐全的数据库,并将数据绑定到我的 DataGridView(我在我的代码dgv_db中称之为它)。我想在每行的末尾放置一个“编辑”按钮,如下所示:
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
update_DataGridView1();
editBtnCreation();
}
public void update_DataGridView1()
{
DatabaseDAO dbDAO = new DatabaseDAO();
databaseBindingSource.DataSource = dbDAO.fetchTables(cb_table_choose.Text);
dgv_db.DataSource = databaseBindingSource;
}
private void editBtnCreation()
{
DataGridViewColumnCollection columnCollection = dgv_db.Columns;
if (dgv_db.Columns.Contains("Edit"))
{
dgv_db.Columns.Remove(dgv_db.Columns["Edit"]);
}
DataGridViewColumn tempColumn = columnCollection.GetLastColumn(DataGridViewElementStates.Visible, DataGridViewElementStates.None);
int tempColumnIDX = tempColumn.DisplayIndex+1;
var editBtn = new DataGridViewButtonColumn
{
Text = "Edit",
Name = "Edit",
UseColumnTextForButtonValue = true,
};
dgv_db.Columns.Insert(tempColumnIDX, editBtn);
}
它把它放在行的末尾,但它也搞砸了我的列顺序,例如:
如果我评论“dgv_db。Columns.Insert(tempColumnIDX, editBtn);“ 列顺序: Column1、Column2、Column3 等
如果我在每行的末尾添加编辑按钮: 列 5 列 6 列 1 列 2 列 4 列 3 列 7 编辑按钮列
所以总而言之,如果我插入 DataGridViewButtonColumn,它会弄乱我的列顺序,但如果我不插入它,它就不会搞砸。
为什么会这样,我能做些什么来解决这个问题?
我试图用 .冻结了,但根本没有帮助。
答: 暂无答案
评论
dgv_db.Columns.Add(...)
dgv_db.Columns.Clear(); dgv_db.DataSource = null;