本文整理汇总了C#中ITime.SubtractTime方法的典型用法代码示例。如果您正苦于以下问题:C# ITime.SubtractTime方法的具体用法?C# ITime.SubtractTime怎么用?C# ITime.SubtractTime使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ITime
的用法示例。
在下文中一共展示了ITime.SubtractTime方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: OnClick
//.........这里部分代码省略.........
MessageBox.Show("There was a problem searching for repeat plans.", "Merge plans by name");
}
SummaryNames = null;
RepeatPlans = null;
Cleanup(pMouseCursor, null, pTable, pPlansTable, pWS, pProgressorDialog);
return;
}
dlgMergeSameNamePlans TheSummaryDialog = new dlgMergeSameNamePlans();
FillTheSummaryList(TheSummaryDialog, SummaryNames);
DialogResult dResult = TheSummaryDialog.ShowDialog();
if (dResult == DialogResult.Cancel)
{
pProgressorDialog.HideDialog();
SummaryNames = null;
RepeatPlans = null;
Cleanup(pMouseCursor, null,pTable, pPlansTable, pWS, pProgressorDialog);
pPlansTable = null;
return;
}
//get the time now
m_pStartTime = new TimeClass();
m_pStartTime.SetFromCurrentLocalTime();
Dictionary<int, int> Lookup = new Dictionary<int, int>();
string[] InClause = new string[0]; //define as dynamic array
m_pStepProgressor.Message = "Creating the merge query...";
FabricUTILS.BuildSearchMapAndQuery(RepeatPlans, out Lookup, out InClause, out pPlansToDelete);
ICadastralFabricSchemaEdit2 pSchemaEd = (ICadastralFabricSchemaEdit2)m_pCadaFab;
ITable ParcelTable = m_pCadaFab.get_CadastralTable(esriCadastralFabricTable.esriCFTParcels);
pSchemaEd.ReleaseReadOnlyFields(ParcelTable, esriCadastralFabricTable.esriCFTParcels); //release safety-catch
if (!FabricUTILS.StartEditing(pWS, bIsUnVersioned))
{
Cleanup(pMouseCursor, pPlansToDelete,pTable, pPlansTable, pWS, pProgressorDialog);
InClause = null;
Lookup.Clear();
Lookup = null;
return;
}
//setup progressor dialog for merge
m_pStepProgressor.Message = "Moving parcels from source to target plans...";
if (!FabricUTILS.MergePlans(ParcelTable, Lookup, InClause, bIsUnVersioned,m_pStepProgressor,m_pTrackCancel))
{
FabricUTILS.AbortEditing(pWS);
pSchemaEd.ResetReadOnlyFields(esriCadastralFabricTable.esriCFTParcels);
Cleanup(pMouseCursor, pPlansToDelete,pTable,pPlansTable, pWS,pProgressorDialog);
InClause = null;
Lookup.Clear();
Lookup = null;
return;
}
if (TheSummaryDialog.checkBox1.Checked)
{
//setup progressor dialog for Delete
m_pStepProgressor.MaxRange = pPlansToDelete.Count();
m_pStepProgressor.Message = "Deleting source plans...";
if (bIsUnVersioned)
{
if (!FabricUTILS.DeleteRowsUnversioned(pWS, pPlansTable, pPlansToDelete, m_pStepProgressor, m_pTrackCancel))
Cleanup(pMouseCursor, pPlansToDelete,pTable,pPlansTable,pWS,pProgressorDialog);
}
else
{
if (!FabricUTILS.DeleteRowsByFIDSet(pPlansTable, pPlansToDelete, m_pStepProgressor, m_pTrackCancel))
Cleanup(pMouseCursor, pPlansToDelete,pTable,pPlansTable, pWS,pProgressorDialog);
}
}
pSchemaEd.ResetReadOnlyFields(esriCadastralFabricTable.esriCFTParcels);
m_pEndTime = new TimeClass();
m_pEndTime.SetFromCurrentLocalTime();
ITimeDuration HowLong = m_pEndTime.SubtractTime(m_pStartTime);
m_pStepProgressor.Message = "["
+ HowLong.Hours.ToString("00") + "h "
+ HowLong.Minutes.ToString("00") + "m "
+ HowLong.Seconds.ToString("00") + "s]" + " Saving changes...please wait.";
FabricUTILS.StopEditing(pWS);
Cleanup(pMouseCursor, pPlansToDelete,pTable,pPlansTable, pWS,pProgressorDialog);
}
catch (COMException ex)
{
MessageBox.Show(Convert.ToString(ex.ErrorCode));
Cleanup(pMouseCursor, pPlansToDelete,pTable,null,pWS,null);
}
}