提交当前本机最新程序
This commit is contained in:
@@ -106,6 +106,7 @@ namespace Lskj.PubMrpAnalyze
|
||||
/// 是否已经执行行改变事件并刷新明细数据
|
||||
/// </summary>
|
||||
private bool isFocusedRowChanged = true;
|
||||
private HashSet<GridView> mrpDragCopyViews = new HashSet<GridView>();
|
||||
#endregion
|
||||
public MrpAnalyzeMain()
|
||||
{
|
||||
@@ -659,6 +660,8 @@ namespace Lskj.PubMrpAnalyze
|
||||
this.gd_LeftBottom.SetGridViewDataSource(detailTable);
|
||||
}
|
||||
this.SetDetailGridDataSource();
|
||||
this.EnsureRightGridFocusedCellCopy(gridControlEx);
|
||||
this.RestoreRightGridCellSelection(gridControlEx);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
@@ -666,6 +669,83 @@ namespace Lskj.PubMrpAnalyze
|
||||
MessageUtil.Show(Message, ex.Message);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
private void EnsureRightGridFocusedCellCopy(GridControlEx gridControlEx)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (gridControlEx == null || gridControlEx.GridView == null) return;
|
||||
|
||||
GridView view = gridControlEx.GridView;
|
||||
if (mrpDragCopyViews.Contains(view)) return;
|
||||
|
||||
view.KeyDown += OnRightGridViewKeyDown;
|
||||
mrpDragCopyViews.Add(view);
|
||||
}
|
||||
catch
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
private void OnRightGridViewKeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (!e.Control || e.KeyCode != Keys.C) return;
|
||||
|
||||
GridView view = sender as GridView;
|
||||
if (view == null || view.OptionsSelection.MultiSelectMode != GridMultiSelectMode.CellSelect) return;
|
||||
|
||||
var cells = view.GetSelectedCells();
|
||||
if (cells.Length != 0 || view.GetSelectedRows().Length == 0) return;
|
||||
if (view.FocusedRowHandle < 0 || view.FocusedColumn == null) return;
|
||||
|
||||
object obj = view.GetFocusedRowCellDisplayText(view.FocusedColumn);
|
||||
Clipboard.SetDataObject(obj == null ? string.Empty : obj + "");
|
||||
e.Handled = true;
|
||||
}
|
||||
catch
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
private void RestoreRightGridCellSelection(GridControlEx gridControlEx)
|
||||
{
|
||||
try
|
||||
{
|
||||
if (gridControlEx == null || gridControlEx.GridView == null || gridControlEx.IsDisposed || !gridControlEx.IsHandleCreated) return;
|
||||
|
||||
gridControlEx.BeginInvoke(new Action(() =>
|
||||
{
|
||||
try
|
||||
{
|
||||
if (gridControlEx.IsDisposed || gridControlEx.GridView == null) return;
|
||||
|
||||
GridView view = gridControlEx.GridView;
|
||||
if (view.RowCount <= 0) return;
|
||||
|
||||
int rowHandle = view.FocusedRowHandle >= 0 ? view.FocusedRowHandle : 0;
|
||||
GridColumn column = view.FocusedColumn ?? view.VisibleColumns.FirstOrDefault();
|
||||
if (column == null) return;
|
||||
|
||||
view.ClearSelection();
|
||||
view.FocusedRowHandle = rowHandle;
|
||||
view.FocusedColumn = column;
|
||||
view.SelectCell(rowHandle, column);
|
||||
}
|
||||
catch
|
||||
{
|
||||
}
|
||||
}));
|
||||
}
|
||||
catch
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// <para>说明:数据行发生改变加载明细</para>
|
||||
/// <para>创建人:王一帆</para>
|
||||
|
||||
Reference in New Issue
Block a user