why does columns.insert transform displayindex datagridview (c#)?


i am inserting buttress datagridview programmatically (i.e., organization any information tables/databases) follows:



int lastindex = m_dgv.columns.count - 1;  // count = 4 case
datagridviewtextboxcolumn col = (datagridviewtextboxcolumn)m_dgv.columns[lastindex];
m_dgv.columns.removeat(lastindex);
m_dgv.columns.insert(insertindex, col); // insertindex = 2


i have found columns visually out method infrequently controlling method. workaround manually set displayindex ability buttress afterwards. adding formula "fixes it", nonetheless i don't know since behaves way.



console.write(m_dgv.columns[0].displayindex); // value 0
console.write(m_dgv.columns[1].displayindex); // value 1
console.write(m_dgv.columns[2].displayindex); // value 3
console.write(m_dgv.columns[3].displayindex); // value 2
col.displayindex = insertindex;
console.write(m_dgv.columns[0].displayindex); // value 0
console.write(m_dgv.columns[1].displayindex); // value 1
console.write(m_dgv.columns[2].displayindex); // value 2
console.write(m_dgv.columns[3].displayindex); // value 3


as an aside, grid grow the buttress count dynamically. i wanted grow chunks, any insert didn't need buttress allocation (and compared initialization). any "new" buttress following total grabbing an new buttress end, inserting preferred position, origination visible.



Comments

Popular posts from this blog

list macos calm editors formula editors

how hibernate @any-related annotations?

using mvc, should hoop communication between views? between models?