SVN-Revision: r382
This commit is contained in:
wyf
2025-03-24 13:43:40 +00:00
parent 54a1493646
commit 8f15fc4d7f
+20 -15
View File
@@ -188,7 +188,8 @@ namespace Lskj.ProductiSched
{
OnBandedViewColumnWidthChanged(treebandGcTop.TreeListObj, null);
} else
}
else
{
OnBandedViewColumnWidthChanged(bandGcTop.BandedView, null);
}
@@ -221,14 +222,14 @@ namespace Lskj.ProductiSched
if (TreeMultiHeader)
{
// 改为TreeList的事件绑定
treebandGcTop.TreeListObj.BandWidthChanged += OnBandedViewColumnWidthChanged;
treebandGcTop.TreeListObj.ColumnWidthChanged += OnBandedViewColumnWidthChanged; // 宽度改变事件
treebandGcTop.TreeListObj.LeftCoordChanged += OnBandedViewLeftCoordChanged; // 水平滚动事件
treebandGcTop.TreeListObj.FocusedNodeChanged += OnFocusedNodeChanged; // 单元格点击事件
treebandGcTop.TreeListObj.KeyDown += OnTreeListKeyDown; // 键盘事件
treebandGcTop.TreeListObj.CustomDrawFooterCell += OnTreeListCustomDrawFooterCell; // 自定义绘制Footer事件
treebandGcTop.TreeListObj.CustomDrawColumnHeader += OnTreeListCustomDrawColumnHeader; // 自定义绘制列头事件
treebandGcTop.TreeListObj.ShowingEditor += OnTreeListShowingEditor; // 编辑器显示前事件
//treebandGcTop.TreeListObj.BandWidthChanged += OnBandedViewColumnWidthChanged;
//treebandGcTop.TreeListObj.ColumnWidthChanged += OnBandedViewColumnWidthChanged; // 宽度改变事件
//treebandGcTop.TreeListObj.LeftCoordChanged += OnBandedViewLeftCoordChanged; // 水平滚动事件
//treebandGcTop.TreeListObj.FocusedNodeChanged += OnFocusedNodeChanged; // 单元格点击事件
//treebandGcTop.TreeListObj.KeyDown += OnTreeListKeyDown; // 键盘事件
//treebandGcTop.TreeListObj.CustomDrawFooterCell += OnTreeListCustomDrawFooterCell; // 自定义绘制Footer事件
//treebandGcTop.TreeListObj.CustomDrawColumnHeader += OnTreeListCustomDrawColumnHeader; // 自定义绘制列头事件
//treebandGcTop.TreeListObj.ShowingEditor += OnTreeListShowingEditor; // 编辑器显示前事件
}
else
{
@@ -253,7 +254,7 @@ namespace Lskj.ProductiSched
BandedGridView view = sender as BandedGridView;
if (view == null) return;
string billDocumentId = view.GetRowCellValue(view.FocusedRowHandle, DataModel.TopModuleModel.ParmaryKey) +"";
string billDocumentId = view.GetRowCellValue(view.FocusedRowHandle, DataModel.TopModuleModel.ParmaryKey) + "";
// 新方式 (精准替代原有取值方式)
DateTime date;
if (DataModel.columnDateMapping.TryGetValue(view.FocusedColumn, out date))
@@ -330,7 +331,7 @@ namespace Lskj.ProductiSched
return false;
}
List<BaseSaveModel> mList = new List<BaseSaveModel>();
DataTable dataTable = TreeMultiHeader? treebandGcTop.GetGridViewDataSource(): bandGcTop.BandedView.GridControl.DataSource as DataTable;
DataTable dataTable = TreeMultiHeader ? treebandGcTop.GetGridViewDataSource() : bandGcTop.BandedView.GridControl.DataSource as DataTable;
DataRow[] modifiedRows = dataTable
.Rows
.Cast<DataRow>()
@@ -485,7 +486,7 @@ namespace Lskj.ProductiSched
typeDate = labelAutoTextEdit.EditValue;
}
// 获取主数据源,假设已绑定到 gridControl1
DataTable mainDataSource = TreeMultiHeader ? treebandGcTop.GetGridViewDataSource():bandGcTop.BandedView.GridControl.DataSourceTable();
DataTable mainDataSource = TreeMultiHeader ? treebandGcTop.GetGridViewDataSource() : bandGcTop.BandedView.GridControl.DataSourceTable();
if (mainDataSource == null)
{
return true;
@@ -712,7 +713,7 @@ namespace Lskj.ProductiSched
string fieldName = !string.IsNullOrEmpty(model.UnionParentField) && rowItem.Table.Columns.Contains(model.UnionParentField) ? model.UnionParentField : DataModel.TopModuleModel.ParmaryKey;
string sqlValue = model.IsReadOnly || model.IsChart ? model.DetailSql : DataModel.RightModuleModel.MenuSql;
sqlValue = ReplaceHelper.ReplaceRowParam(rowItem, sqlValue);
DataRow row = TreeMultiHeader ? treebandGcTop.GetViewFocusedDataRow(): bandGcTop.GetViewFocusedDataRow();
DataRow row = TreeMultiHeader ? treebandGcTop.GetViewFocusedDataRow() : bandGcTop.GetViewFocusedDataRow();
if (row != null && isLeft)
{
//先替换左侧选中行,在替换主表
@@ -860,7 +861,8 @@ namespace Lskj.ProductiSched
{
UpdateDynamicColumns(treebandGcTop, dateTime, typeDate);
}
else {
else
{
UpdateDynamicColumns(bandGcTop, dateTime, typeDate);
}
}
@@ -929,7 +931,7 @@ namespace Lskj.ProductiSched
DataTable dt = BaseImpl.GetDataTableResult(query);
foreach (DataRow row in dt.Rows)
{
string billDocumentId = row["billdocument_id"]+"";
string billDocumentId = row["billdocument_id"] + "";
string showDayList = row["showday_list"].ToString();
if (!string.IsNullOrEmpty(showDayList))
@@ -1438,6 +1440,7 @@ namespace Lskj.ProductiSched
{
// 原有的日处理逻辑(保持原代码不变)
DateTime endDate = currentDate.AddMonths(3).AddDays(-1);
grid.BandedView.BeginUpdate();
// 处理每天的列(现有逻辑)
for (int i = 0; i < 93; i++)
@@ -1499,6 +1502,7 @@ namespace Lskj.ProductiSched
}
}
}
grid.BandedView.EndUpdate();
}
/// <summary>
/// 更新TreeList控件的日列
@@ -1508,6 +1512,7 @@ namespace Lskj.ProductiSched
DateTime endDate = currentDate.AddMonths(3).AddDays(-1);
// 核心优化代码:暂停数据源绑定和界面刷新
grid.TreeListObj.BeginInit();
grid.TreeListObj.BeginUpdate();
grid.TreeListObj.LockReloadNodes(); // 阻止节点数据重载(关键优化)