回复 3楼清越流年的帖子
只要自己写代码逻辑就可实现。
1.调用Scroll事件,触发Scroll事件的时候记住当前的C1TrueDBGrid的信息,包含Scroll位置。
代码参考:
- object ActiveGrid;
- void c1TrueDBGrid1_Scroll(object sender, C1.Win.C1TrueDBGrid.CancelEventArgs e)
- {
- ActiveGrid = sender;
- }
复制代码
2.运行时,滚动条滚动,使得Scroll事件被触发,滚动条位置就记录在ActiveGrid中。
3.假设是ButtonClick的时候更改数据源,那么久将滚动条位置放置到之前的地方。
代码参考:
- private void button1_Click(object sender, EventArgs e)
- {
- int h = (ActiveGrid as C1.Win.C1TrueDBGrid.C1TrueDBGrid).Splits[0].HorizontalOffset;
- int v=(ActiveGrid as C1.Win.C1TrueDBGrid.C1TrueDBGrid).Splits[0].VerticalOffset;
-
- this.c1TrueDBGrid1.DataSource = dt;
- this.c1TrueDBGrid1.Splits[0].HorizontalOffset = h;
- this.c1TrueDBGrid1.Splits[0].VerticalOffset = v;
-
- }
复制代码 |