merge: 合并初始化缓存与资源释放优化

This commit is contained in:
2026-08-15 11:39:58 +08:00
27 changed files with 474 additions and 110 deletions
+21 -7
View File
@@ -26,6 +26,7 @@ namespace Lskj.Control.Model
/// </summary>
public class GridDragTree : IDisposable
{
private bool _disposed;
/// <summary>
/// 拖动位置
/// </summary>
@@ -38,7 +39,6 @@ namespace Lskj.Control.Model
/// 拖动目标源
/// </summary>
private TreeView _treeView;
private bool _disposed;
public bool CanDragParentNode = false;
/// <summary>
/// 表格数据拖动完成
@@ -60,25 +60,40 @@ namespace Lskj.Control.Model
this._treeView.AllowDrop = true;
this._treeView.DragOver += new DragEventHandler(treeView_DragOver);
this._treeView.DragDrop += new DragEventHandler(treeView_DragDrop);
if (this._gridView.GridControl != null)
{
this._gridView.GridControl.Disposed += OnOwnerDisposed;
}
this._treeView.Disposed += OnOwnerDisposed;
}
private void OnOwnerDisposed(object sender, EventArgs e)
{
Dispose();
}
/// <summary>
/// 模块关闭时解除源表格和目标树的拖拽事件。
/// </summary>
public void Dispose()
{
if (_disposed)
{
return;
}
if (_disposed) return;
_disposed = true;
if (_gridView != null)
{
_gridView.MouseDown -= gridView_MouseDown;
_gridView.MouseMove -= gridView_MouseMove;
if (_gridView.GridControl != null)
{
_gridView.GridControl.Disposed -= OnOwnerDisposed;
}
}
if (_treeView != null)
{
_treeView.DragOver -= treeView_DragOver;
_treeView.DragDrop -= treeView_DragDrop;
_treeView.Disposed -= OnOwnerDisposed;
}
OnDragComplete = null;
@@ -86,7 +101,6 @@ namespace Lskj.Control.Model
_gridView = null;
_treeView = null;
}
/// <summary>
/// <para>说明:获取表格选中行数据</para>