Compare commits

...
8 Commits
25 changed files with 260 additions and 50 deletions
@@ -28,7 +28,9 @@ namespace AT.STO.UI.Win
_dropDownHelper = new DropDownWindowHelper(); _dropDownHelper = new DropDownWindowHelper();
_dropDownHelper.DropDownClosed -= new DropDownClosedEventHandler(DropDownHelper_DropDownClosed);
_dropDownHelper.DropDownClosed += new DropDownClosedEventHandler(DropDownHelper_DropDownClosed); _dropDownHelper.DropDownClosed += new DropDownClosedEventHandler(DropDownHelper_DropDownClosed);
_dropDownHelper.DropDownCancel -= new DropDownCancelEventHandler(DropDownHelper_DropDownCancel);
_dropDownHelper.DropDownCancel += new DropDownCancelEventHandler(DropDownHelper_DropDownCancel); _dropDownHelper.DropDownCancel += new DropDownCancelEventHandler(DropDownHelper_DropDownCancel);
combo.DisplayMember = "Text"; combo.DisplayMember = "Text";
@@ -82,7 +84,9 @@ namespace AT.STO.UI.Win
DropDownForm dropDown = new DropDownForm(_dropDownControl); DropDownForm dropDown = new DropDownForm(_dropDownControl);
dropDown.FinishEditing -= new DropDownValueChangedEventHandler(DropDown_FinishEditing);
dropDown.FinishEditing += new DropDownValueChangedEventHandler(DropDown_FinishEditing); dropDown.FinishEditing += new DropDownValueChangedEventHandler(DropDown_FinishEditing);
dropDown.ValueChanged -= new DropDownValueChangedEventHandler(DropDown_ValueChanged);
dropDown.ValueChanged += new DropDownValueChangedEventHandler(DropDown_ValueChanged); dropDown.ValueChanged += new DropDownValueChangedEventHandler(DropDown_ValueChanged);
combo.DroppedDown = false; combo.DroppedDown = false;
@@ -49,7 +49,9 @@ namespace AT.STO.UI.Win
{ {
base.OnShown(e); base.OnShown(e);
_control.FinishEditing -= new DropDownValueChangedEventHandler(Ctrl_FinishEditing);
_control.FinishEditing += new DropDownValueChangedEventHandler(Ctrl_FinishEditing); _control.FinishEditing += new DropDownValueChangedEventHandler(Ctrl_FinishEditing);
_control.ValueChanged -= new DropDownValueChangedEventHandler(Ctrl_ValueChanged);
_control.ValueChanged += new DropDownValueChangedEventHandler(Ctrl_ValueChanged); _control.ValueChanged += new DropDownValueChangedEventHandler(Ctrl_ValueChanged);
} }
#endregion #endregion
@@ -39,6 +39,7 @@ namespace AT.STO.UI.Win
public DropDownWindowHelper() public DropDownWindowHelper()
{ {
_filter = new DropDownMessageFilter(this); _filter = new DropDownMessageFilter(this);
_filter.DropDownCancel -= new DropDownCancelEventHandler(Popup_Cancel);
_filter.DropDownCancel += new DropDownCancelEventHandler(Popup_Cancel); _filter.DropDownCancel += new DropDownCancelEventHandler(Popup_Cancel);
} }
#endregion #endregion
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -101,14 +101,17 @@ namespace VEPROMS
// dltFlg flag is used to notify SQL SP to deleted all the entries for the user before entering the annotation type selections. // dltFlg flag is used to notify SQL SP to deleted all the entries for the user before entering the annotation type selections.
int dltFlg = 1; int dltFlg = 1;
foreach (AnnotataionItem item in lstSelected.Items.OfType<AnnotataionItem>()) //foreach (AnnotataionItem item in lstSelected.Items.OfType<AnnotataionItem>())
{ //{
AnnotationTypeID = item.TypeID; // AnnotationTypeID = item.TypeID;
AnnotationNameStr = item.NameStr; // AnnotationNameStr = item.NameStr;
DataTable dt2 = coverToTable(UserID);
VEPROMS.CSLA.Library.AnnotationstypeSelections.Update2(dt2);
// dltFlg = 0;
//}
VEPROMS.CSLA.Library.AnnotationstypeSelections.Update(UserID, AnnotationTypeID, dltFlg, AnnotationNameStr);
dltFlg = 0;
}
} }
public class AnnotataionItem public class AnnotataionItem
{ {
@@ -172,6 +175,20 @@ namespace VEPROMS
{ {
this.Close(); this.Close();
} }
private DataTable coverToTable(string userid)
{
DataTable dt = new DataTable();
dt.Columns.Add("TypeID", typeof(Int32));
dt.Columns.Add("NameStr", typeof(string));
dt.Columns.Add("UserID", typeof(string));
foreach (AnnotataionItem item in lstSelected.Items.OfType<AnnotataionItem>())
{
dt.Rows.Add(item.TypeID, item.NameStr, userid);
}
return dt;
}
} }
} }
@@ -393,6 +393,7 @@ namespace VEPROMS
{ {
SetupForProcedure(); SetupForProcedure();
_MyTimer = new Timer(); _MyTimer = new Timer();
_MyTimer.Tick -= new EventHandler(_MyTimer_Tick);
_MyTimer.Tick += new EventHandler(_MyTimer_Tick); _MyTimer.Tick += new EventHandler(_MyTimer_Tick);
_MyTimer.Interval = 100; _MyTimer.Interval = 100;
_MyTimer.Enabled = true; _MyTimer.Enabled = true;
+139 -41
View File
@@ -1,5 +1,3 @@
Set NoCount On; Set NoCount On;
If (db_name() in('master','model','msdn','tempdb')) If (db_name() in('master','model','msdn','tempdb'))
@@ -24076,16 +24074,72 @@ ELSE
GO GO
-- C2025-027 Annotation Type Filtering
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[AnnotationTypeSelections]') AND type in (N'U'))
DROP TABLE [dbo].[AnnotationTypeSelections]
GO
/****** Object: Table [dbo].[AnnotationTypeSelections] Script Date: 7/10/2025 2:38:23 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: Paul Larsen
-- Create date: 07/10/2025
-- Description: Store user Annotation selections for annotation filter.
-- =============================================
CREATE TABLE [dbo].[AnnotationTypeSelections](
[ASTypeID] [int] IDENTITY(1,1) NOT NULL,
[TypeID] [int] NULL,
[UsrID] [varchar](50) NULL,
[Name] [nvarchar](100) NULL,
[Config] [nvarchar](max) NULL,
[DTS] [datetime] NULL,
[UserID] [nvarchar](100) NULL,
[LastChanged] [timestamp] NULL,
[IsEPAnnotationType] [bit] NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
--CREATE UNIQUE INDEX idx_AnnotationTypeSelections_Usrid
--ON AnnotationTypeSelections (TypeID, Name, UsrID);
--GO
IF EXISTS (SELECT * FROM sys.indexes WHERE name='idx_AnnotationTypeSelections_UsrID'
AND object_id = OBJECT_ID('[dbo].[AnnotationTypeSelections]'))
begin
DROP INDEX [idx_AnnotationTypeSelections_UsrID] ON [dbo].[AnnotationTypeSelections];
end
CREATE NONCLUSTERED INDEX idx_AnnotationTypeSelections_UsrID
ON [dbo].[AnnotationTypeSelections] (UsrID)
INCLUDE (TypeID, Name)
GO
--CREATE NONCLUSTERED INDEX [idx_AnnotationTypeSelections_Usrid] ON [dbo].[AnnotationTypeSelections]
--(
-- [UsrID] ASC
--)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
--GO
--CREATE NONCLUSTERED INDEX [idx_AnnotationTypeSelections_TypeID] ON [dbo].[AnnotationTypeSelections]
--(
-- [TypeID] ASC
--)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
--GO
-- C2025-027 Annotation Type Filtering -- C2025-027 Annotation Type Filtering
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[getAnnotationSelectListTypes]') AND OBJECTPROPERTY(id,N'IsProcedure') = 1) IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[getAnnotationSelectListTypes]') AND OBJECTPROPERTY(id,N'IsProcedure') = 1)
DROP PROCEDURE [getAnnotationSelectListTypes]; DROP PROCEDURE [getAnnotationSelectListTypes];
GO GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- ============================================= -- =============================================
-- Author: Paul Larsen -- Author: Paul Larsen
-- Create date: 7/10/2025 -- Create date: 7/10/2025
@@ -24104,13 +24158,10 @@ AS
[DTS], [DTS],
[UserID], [UserID],
[LastChanged], [LastChanged],
(SELECT COUNT(*) FROM [Annotations] WHERE [Annotations].[TypeID]= [TypeID]) [AnnotationCount] (SELECT COUNT(*) FROM [Annotations] WHERE [Annotations].[TypeID]= [TypeID]) [AnnotationCount],
--[IsEPAnnotationType] [IsEPAnnotationType]
FROM [AnnotationTypes] --A FROM [AnnotationTypes] --A
--JOIN AnnotationTypeSelections S ON S.TypeID = A.TypeID WHERE TypeID NOT IN (SELECT TypeID FROM AnnotationTypeSelections WHERE UsrID = @UserID)
WHERE TypeID NOT IN (SELECT TypeID FROM AnnotationTypeSelections WHERE UsrID = @UserID) --S.ItemID = @ItemID AND S.TypeID != A.TypeID
RETURN
GO GO
@@ -24154,7 +24205,6 @@ IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[getAnnotationsty
GO GO
SET ANSI_NULLS ON SET ANSI_NULLS ON
GO GO
SET QUOTED_IDENTIFIER ON SET QUOTED_IDENTIFIER ON
GO GO
@@ -24198,12 +24248,42 @@ BEGIN
END END
END END
GO
-- C2025-027 Annotation Type Filtering -- C2025-027 Annotation Type Filtering
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[AnnotationTypeSelections]') AND type in (N'U')) --IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[TableValAnnotTypeSelections]') AND OBJECTPROPERTY(id,N'IsType') = 1)
DROP TABLE [dbo].[AnnotationTypeSelections]
-- Type --
--IF NOT EXISTS (SELECT * FROM sys.types WHERE is_table_type = 1 AND name ='TableValAnnotTypeSelections')
-- DROP PROCEDURE [TableValAnnotTypeSelections];
--GO
--/****** Object: UserDefinedTableType [dbo].[TableValAnnotTypeSelections] Script Date: 7/21/2025 8:06:11 PM ******/
--CREATE TYPE [dbo].[TableValAnnotTypeSelections] AS TABLE(
-- [TypeID] [int] NOT NULL,
-- [NameStr] [varchar](200) NULL,
-- [UserID] [varchar](50) NULL
--)
--GO
-- C2025-027 Annotation Type Filtering
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[UpdateAnnotationstypeSelections2]') AND OBJECTPROPERTY(id,N'IsProcedure') = 1)
DROP PROCEDURE [UpdateAnnotationstypeSelections2];
-- Need to drop UpdateAnnotationstypeSelections2 SP first so script can drop and recreate the TableValAnnotTypeSelections table type
IF EXISTS( SELECT * FROM INFORMATION_SCHEMA.DOMAINS WHERE Domain_Name = 'TableValAnnotTypeSelections' )
DROP TYPE [dbo].[TableValAnnotTypeSelections]
CREATE TYPE [dbo].[TableValAnnotTypeSelections] AS TABLE(
[TypeID] [int] NOT NULL,
[NameStr] [varchar](200) NULL,
[UserID] [varchar](50) NULL
)
GO GO
/****** Object: Table [dbo].[AnnotationTypeSelections] Script Date: 7/10/2025 2:38:23 PM ******/
/****** Object: StoredProcedure [dbo].[UpdateAnnotationstypeSelections2] Script Date: 7/21/2025 8:51:42 PM ******/
SET ANSI_NULLS ON SET ANSI_NULLS ON
GO GO
@@ -24212,33 +24292,51 @@ GO
-- ============================================= -- =============================================
-- Author: Paul Larsen -- Author: Paul Larsen
-- Create date: 07/10/2025 -- Create date: 07/21/2025
-- Description: Store user Annotation selections for annotation filter. -- Description: Manage user choice annotation types
-- ============================================= -- =============================================
CREATE PROC [dbo].[UpdateAnnotationstypeSelections2]
CREATE TABLE [dbo].[AnnotationTypeSelections](
[ASTypeID] [int] IDENTITY(1,1) NOT NULL,
[TypeID] [int] NULL,
[UsrID] [varchar](50) NULL,
[Name] [nvarchar](100) NOT NULL,
[Config] [nvarchar](max) NULL,
[DTS] [datetime] NOT NULL,
[UserID] [nvarchar](100) NOT NULL,
[LastChanged] [timestamp] NOT NULL,
[IsEPAnnotationType] [bit] NOT NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
CREATE NONCLUSTERED INDEX [idx_AnnotationTypeSelections_Usrid] ON [dbo].[AnnotationTypeSelections]
( (
[UsrID] ASC @TempTable AS dbo.TableValAnnotTypeSelections READONLY
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY] )
GO AS
CREATE NONCLUSTERED INDEX [idx_AnnotationTypeSelections_TypeID] ON [dbo].[AnnotationTypeSelections] BEGIN
(
[TypeID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
GO
--INSERT INTO CUSTOMER (CustomerId,CustomerName ,Isdeleted )
--SELECT CustomerId, CustomerName, 0 AS Isdeleted FROM @TempTable
MERGE AnnotationTypeSelections AS TARGET
USING @TempTable AS SOURCE
/* 1. Performing the UPDATE operation */
/* If the P_ID is same,
check for change in P_NAME or P_PRICE */
ON (TARGET.TypeID = SOURCE.TypeID)
WHEN MATCHED
AND TARGET.Name <> SOURCE.NameStr
/* Update the records in TARGET */
THEN UPDATE
SET TARGET.Name = SOURCE.NameStr,
TARGET.UsrID = SOURCE.UserID
/* 2. Performing the INSERT operation */
/* When no records are matched with TARGET table
Then insert the records in the target table */
WHEN NOT MATCHED BY TARGET
THEN INSERT (TypeID, Name, UsrID)
VALUES (SOURCE.TypeID, SOURCE.NameStr,SOURCE.UserID)
/* 3. Performing the DELETE operation */
/* When no records are matched with SOURCE table
Then delete the records from the target table */
WHEN NOT MATCHED BY SOURCE
THEN DELETE;
END
GO
IF (@@Error = 0) PRINT 'Running vesp_UpdateEPFormat Succeeded' IF (@@Error = 0) PRINT 'Running vesp_UpdateEPFormat Succeeded'
ELSE PRINT 'Running vesp_UpdateEPFormat Failed to Execute' ELSE PRINT 'Running vesp_UpdateEPFormat Failed to Execute'
@@ -65,11 +65,13 @@ namespace VEPROMS
MyFrmVEPROMS = myFrmVEPROMS;// Save frmVEPROMS for Import to shutoff SessionPing MyFrmVEPROMS = myFrmVEPROMS;// Save frmVEPROMS for Import to shutoff SessionPing
_MyApproval = new ApprovalInfo(myFrmVEPROMS);// Save frmVEPROMS for Import to shutoff SessionPing _MyApproval = new ApprovalInfo(myFrmVEPROMS);// Save frmVEPROMS for Import to shutoff SessionPing
ApplicabilityIndex = myDocVersion.DocVersionConfig.SelectedSlave; ApplicabilityIndex = myDocVersion.DocVersionConfig.SelectedSlave;
this.ConsistencyPrintRequest -= new DisplayConsistencyReportEvent(dlgApproveProcedure_ConsistencyPrintRequest);
this.ConsistencyPrintRequest += new DisplayConsistencyReportEvent(dlgApproveProcedure_ConsistencyPrintRequest); this.ConsistencyPrintRequest += new DisplayConsistencyReportEvent(dlgApproveProcedure_ConsistencyPrintRequest);
_MyDocVersion = myDocVersion; _MyDocVersion = myDocVersion;
_MyDocVersion.ResetProcedures(); // B2021-035: Pasted, modified number and deleted procedures not refreshed so missing from list _MyDocVersion.ResetProcedures(); // B2021-035: Pasted, modified number and deleted procedures not refreshed so missing from list
InitializeComponent(); InitializeComponent();
FlexGridAddEvents(); FlexGridAddEvents();
_MyApproval.StatusUpdated -= new ApprovalStatusChangeEvent(_MyApproval_StatusUpdated);
_MyApproval.StatusUpdated += new ApprovalStatusChangeEvent(_MyApproval_StatusUpdated); _MyApproval.StatusUpdated += new ApprovalStatusChangeEvent(_MyApproval_StatusUpdated);
SetupComboBoxes(); SetupComboBoxes();
foreach (ProcedureInfo pi in myDocVersion.Procedures) foreach (ProcedureInfo pi in myDocVersion.Procedures)
@@ -101,6 +103,7 @@ namespace VEPROMS
//fgProcs.SetupEditor += new C1.Win.C1FlexGrid.RowColEventHandler(fgProcs_SetupEditor); //fgProcs.SetupEditor += new C1.Win.C1FlexGrid.RowColEventHandler(fgProcs_SetupEditor);
//fgProcs.StartEdit += new C1.Win.C1FlexGrid.RowColEventHandler(fgProcs_StartEdit); //fgProcs.StartEdit += new C1.Win.C1FlexGrid.RowColEventHandler(fgProcs_StartEdit);
//fgProcs.ValidateEdit += new C1.Win.C1FlexGrid.ValidateEditEventHandler(fgProcs_ValidateEdit); //fgProcs.ValidateEdit += new C1.Win.C1FlexGrid.ValidateEditEventHandler(fgProcs_ValidateEdit);
fgProcs.ComboCloseUp -= new C1.Win.C1FlexGrid.RowColEventHandler(fgProcs_ComboCloseUp);
fgProcs.ComboCloseUp += new C1.Win.C1FlexGrid.RowColEventHandler(fgProcs_ComboCloseUp); fgProcs.ComboCloseUp += new C1.Win.C1FlexGrid.RowColEventHandler(fgProcs_ComboCloseUp);
//fgProcs.MouseDown += new MouseEventHandler(fgProcs_MouseDown); //fgProcs.MouseDown += new MouseEventHandler(fgProcs_MouseDown);
//fgProcs.MouseUp += new MouseEventHandler(fgProcs_MouseUp); //fgProcs.MouseUp += new MouseEventHandler(fgProcs_MouseUp);
@@ -275,6 +278,7 @@ namespace VEPROMS
{ {
MyFrmVEPROMS = myFrmVEPROMS;// Save frmVEPROMS for Import to shutoff SessionPing MyFrmVEPROMS = myFrmVEPROMS;// Save frmVEPROMS for Import to shutoff SessionPing
_MyApproval = new ApprovalInfo(myFrmVEPROMS);// Save frmVEPROMS for Import to shutoff SessionPing _MyApproval = new ApprovalInfo(myFrmVEPROMS);// Save frmVEPROMS for Import to shutoff SessionPing
this.ConsistencyPrintRequest -= new DisplayConsistencyReportEvent(dlgApproveProcedure_ConsistencyPrintRequest);
this.ConsistencyPrintRequest += new DisplayConsistencyReportEvent(dlgApproveProcedure_ConsistencyPrintRequest); this.ConsistencyPrintRequest += new DisplayConsistencyReportEvent(dlgApproveProcedure_ConsistencyPrintRequest);
_MyDocVersion = myDocVersion; _MyDocVersion = myDocVersion;
_MyDocVersion.ResetProcedures(); // B2021-035: Pasted, modified number and deleted procedures not refreshed so missing from list _MyDocVersion.ResetProcedures(); // B2021-035: Pasted, modified number and deleted procedures not refreshed so missing from list
@@ -295,6 +299,7 @@ namespace VEPROMS
{ {
MyFrmVEPROMS = myFrmVEPROMS;// Save frmVEPROMS for Import to shutoff SessionPing MyFrmVEPROMS = myFrmVEPROMS;// Save frmVEPROMS for Import to shutoff SessionPing
_MyApproval = new ApprovalInfo(myFrmVEPROMS);// Save frmVEPROMS for Import to shutoff SessionPing _MyApproval = new ApprovalInfo(myFrmVEPROMS);// Save frmVEPROMS for Import to shutoff SessionPing
this.ConsistencyPrintRequest -= new DisplayConsistencyReportEvent(dlgApproveProcedure_ConsistencyPrintRequest);
this.ConsistencyPrintRequest += new DisplayConsistencyReportEvent(dlgApproveProcedure_ConsistencyPrintRequest); this.ConsistencyPrintRequest += new DisplayConsistencyReportEvent(dlgApproveProcedure_ConsistencyPrintRequest);
_MyDocVersion = myProcedure.MyDocVersion; _MyDocVersion = myProcedure.MyDocVersion;
_MyDocVersion.ResetProcedures(); // B2021-035: Pasted, modified number and deleted procedures not refreshed so missing from list _MyDocVersion.ResetProcedures(); // B2021-035: Pasted, modified number and deleted procedures not refreshed so missing from list
@@ -450,6 +455,7 @@ namespace VEPROMS
int checkedCount = clbMore.CheckedItems.Count; int checkedCount = clbMore.CheckedItems.Count;
string oldLabel = lblMore.Text; string oldLabel = lblMore.Text;
pbMore.Visible = true; pbMore.Visible = true;
ItemInfoList.ConsistencyCheckUpdated -= new ItemInfoListCCEvent(ItemInfoList_ConsistencyCheckUpdated);
ItemInfoList.ConsistencyCheckUpdated += new ItemInfoListCCEvent(ItemInfoList_ConsistencyCheckUpdated); ItemInfoList.ConsistencyCheckUpdated += new ItemInfoListCCEvent(ItemInfoList_ConsistencyCheckUpdated);
List<ProcedureInfo> myProcs = new List<ProcedureInfo>(); List<ProcedureInfo> myProcs = new List<ProcedureInfo>();
// B2018-136 use the list of procedures that have checkboxes and are checked (right panel) instead of the list to be approved (left panel) // B2018-136 use the list of procedures that have checkboxes and are checked (right panel) instead of the list to be approved (left panel)
@@ -40,6 +40,7 @@ namespace VEPROMS
rb.Parent = pnlGroups; rb.Parent = pnlGroups;
rb.Dock = DockStyle.Top; rb.Dock = DockStyle.Top;
rb.Tag = gi; rb.Tag = gi;
rb.CheckedChanged -= new EventHandler(rb_CheckedChanged);
rb.CheckedChanged += new EventHandler(rb_CheckedChanged); rb.CheckedChanged += new EventHandler(rb_CheckedChanged);
pnlGroups.Controls.Add(rb); pnlGroups.Controls.Add(rb);
rb.BringToFront(); rb.BringToFront();
@@ -254,6 +254,7 @@ namespace VEPROMS
if (CancelStop) btnCancel.Visible = true; if (CancelStop) btnCancel.Visible = true;
Application.DoEvents(); Application.DoEvents();
MyPromsPrinter.StatusChanged -= new PromsPrinterStatusEvent(pp_StatusChanged);
MyPromsPrinter.StatusChanged += new PromsPrinterStatusEvent(pp_StatusChanged); MyPromsPrinter.StatusChanged += new PromsPrinterStatusEvent(pp_StatusChanged);
MyPromsPrinter.DocReplace = DocReplace; // used when approve generates an export with unlinked ROs and Transitions MyPromsPrinter.DocReplace = DocReplace; // used when approve generates an export with unlinked ROs and Transitions
+10 -1
View File
@@ -3604,9 +3604,13 @@ namespace VEPROMS
if (tn == null) if (tn == null)
return; return;
_ExpandingTree = true; _ExpandingTree = true;
tn.LoadingChildrenDone -= new VETreeNodeEvent(tn_LoadingChildrenDone);
tn.LoadingChildrenDone += new VETreeNodeEvent(tn_LoadingChildrenDone); tn.LoadingChildrenDone += new VETreeNodeEvent(tn_LoadingChildrenDone);
tn.LoadingChildrenMax -= new VETreeNodeEvent(tn_LoadingChildrenMax);
tn.LoadingChildrenMax += new VETreeNodeEvent(tn_LoadingChildrenMax); tn.LoadingChildrenMax += new VETreeNodeEvent(tn_LoadingChildrenMax);
tn.LoadingChildrenValue -= new VETreeNodeEvent(tn_LoadingChildrenValue);
tn.LoadingChildrenValue += new VETreeNodeEvent(tn_LoadingChildrenValue); tn.LoadingChildrenValue += new VETreeNodeEvent(tn_LoadingChildrenValue);
tn.LoadingChildrenSQL -= new VETreeNodeEvent(tn_LoadingChildrenSQL);
tn.LoadingChildrenSQL += new VETreeNodeEvent(tn_LoadingChildrenSQL); tn.LoadingChildrenSQL += new VETreeNodeEvent(tn_LoadingChildrenSQL);
tn.LoadChildren(true); tn.LoadChildren(true);
} }
@@ -4327,7 +4331,11 @@ namespace VEPROMS
_LastStepRTB.EditModeChanged -= new StepRTBEvent(_LastStepRTB_EditModeChanged); _LastStepRTB.EditModeChanged -= new StepRTBEvent(_LastStepRTB_EditModeChanged);
_LastStepRTB = args != null && args.MyEditItem != null ? args.MyEditItem.MyStepRTB : null; _LastStepRTB = args != null && args.MyEditItem != null ? args.MyEditItem.MyStepRTB : null;
if (_LastStepRTB != null) _LastStepRTB.EditModeChanged += new StepRTBEvent(_LastStepRTB_EditModeChanged); if (_LastStepRTB != null)
{
_LastStepRTB.EditModeChanged -= new StepRTBEvent(_LastStepRTB_EditModeChanged);
_LastStepRTB.EditModeChanged += new StepRTBEvent(_LastStepRTB_EditModeChanged);
}
lblEditView.Text = " "; lblEditView.Text = " ";
if (args == null) if (args == null)
@@ -4462,6 +4470,7 @@ namespace VEPROMS
displayHistory.MyEditItem = args.MyEditItem; displayHistory.MyEditItem = args.MyEditItem;
lblEditView.Text = args.MyEditItem.MyStepPanel.VwMode == E_ViewMode.Edit ? "Edit" : "View"; lblEditView.Text = args.MyEditItem.MyStepPanel.VwMode == E_ViewMode.Edit ? "Edit" : "View";
_CurrentItem.Deleted -= new ItemInfoEvent(_CurrentItem_Deleted);
_CurrentItem.Deleted += new ItemInfoEvent(_CurrentItem_Deleted); _CurrentItem.Deleted += new ItemInfoEvent(_CurrentItem_Deleted);
dlgFindReplace.MyEditItem = args.MyEditItem; dlgFindReplace.MyEditItem = args.MyEditItem;
SpellChecker.MyEditItem = args.MyEditItem; SpellChecker.MyEditItem = args.MyEditItem;
@@ -8325,6 +8325,7 @@ namespace VEPROMS.CSLA.Library
if (_ProcedureConfig == null) if (_ProcedureConfig == null)
{ {
_ProcedureConfig = new ProcedureConfig(this); _ProcedureConfig = new ProcedureConfig(this);
this.MyContent.Changed -= new ContentInfoEvent(MyContent_Changed);
this.MyContent.Changed += new ContentInfoEvent(MyContent_Changed); this.MyContent.Changed += new ContentInfoEvent(MyContent_Changed);
} }
return _ProcedureConfig; return _ProcedureConfig;
@@ -8334,6 +8335,7 @@ namespace VEPROMS.CSLA.Library
void MyContent_Changed(object sender) void MyContent_Changed(object sender)
{ {
this.MyContent.Changed -= new ContentInfoEvent(MyContent_Changed);
this.MyContent.Changed += new ContentInfoEvent(MyContent_Changed); this.MyContent.Changed += new ContentInfoEvent(MyContent_Changed);
} }
#endregion #endregion
@@ -169,7 +169,32 @@ namespace VEPROMS.CSLA.Library
} }
} }
} }
}
}
public static void Update2(DataTable dt)
{
using (SqlConnection cn = Database.VEPROMS_SqlConnection)
{
using (SqlCommand cm = cn.CreateCommand())
{
try
{
cm.CommandType = CommandType.StoredProcedure;
cm.CommandText = "UpdateAnnotationstypeSelections2";
cm.CommandTimeout = Database.DefaultTimeout;
//Pass table Valued parameter to Store Procedure
SqlParameter sqlParam = cm.Parameters.AddWithValue("@TempTable", dt);
sqlParam.SqlDbType = SqlDbType.Structured;
cm.ExecuteNonQuery();
}
catch (Exception ex)
{
}
}
}
}
} }
} }
@@ -386,12 +386,19 @@ namespace VEPROMS.CSLA.Library
ItemInfo myItemInfo = o as ItemInfo; ItemInfo myItemInfo = o as ItemInfo;
if (myItemInfo != null) if (myItemInfo != null)
{ {
myItemInfo.Deleted -= new ItemInfoEvent(myItemInfo_Deleted);
myItemInfo.Deleted += new ItemInfoEvent(myItemInfo_Deleted); myItemInfo.Deleted += new ItemInfoEvent(myItemInfo_Deleted);
myItemInfo.ChildrenDeleted -= new ItemInfoEvent(myItemInfo_ChildrenDeleted);
myItemInfo.ChildrenDeleted += new ItemInfoEvent(myItemInfo_ChildrenDeleted); myItemInfo.ChildrenDeleted += new ItemInfoEvent(myItemInfo_ChildrenDeleted);
myItemInfo.MyContent.Changed -= new ContentInfoEvent(NodeText_Changed);
myItemInfo.MyContent.Changed += new ContentInfoEvent(NodeText_Changed); myItemInfo.MyContent.Changed += new ContentInfoEvent(NodeText_Changed);
myItemInfo.OrdinalChanged -= new ItemInfoEvent(NodeText_Changed);
myItemInfo.OrdinalChanged += new ItemInfoEvent(NodeText_Changed); myItemInfo.OrdinalChanged += new ItemInfoEvent(NodeText_Changed);
myItemInfo.NewSiblingAfter -= new ItemInfoInsertEvent(myItemInfo_NewSiblingAfter);
myItemInfo.NewSiblingAfter += new ItemInfoInsertEvent(myItemInfo_NewSiblingAfter); myItemInfo.NewSiblingAfter += new ItemInfoInsertEvent(myItemInfo_NewSiblingAfter);
myItemInfo.NewSiblingBefore -= new ItemInfoInsertEvent(myItemInfo_NewSiblingBefore);
myItemInfo.NewSiblingBefore += new ItemInfoInsertEvent(myItemInfo_NewSiblingBefore); myItemInfo.NewSiblingBefore += new ItemInfoInsertEvent(myItemInfo_NewSiblingBefore);
myItemInfo.NewChild -= new ItemInfoInsertEvent(myItemInfo_NewChild);
myItemInfo.NewChild += new ItemInfoInsertEvent(myItemInfo_NewChild); myItemInfo.NewChild += new ItemInfoInsertEvent(myItemInfo_NewChild);
} }
} }
@@ -429,12 +436,19 @@ namespace VEPROMS.CSLA.Library
ItemInfo myItemInfo = o as ItemInfo; ItemInfo myItemInfo = o as ItemInfo;
if (myItemInfo != null) if (myItemInfo != null)
{ {
myItemInfo.Deleted -= new ItemInfoEvent(myItemInfo_Deleted);
myItemInfo.Deleted += new ItemInfoEvent(myItemInfo_Deleted); myItemInfo.Deleted += new ItemInfoEvent(myItemInfo_Deleted);
myItemInfo.ChildrenDeleted -= new ItemInfoEvent(myItemInfo_ChildrenDeleted);
myItemInfo.ChildrenDeleted += new ItemInfoEvent(myItemInfo_ChildrenDeleted); myItemInfo.ChildrenDeleted += new ItemInfoEvent(myItemInfo_ChildrenDeleted);
myItemInfo.MyContent.Changed -= new ContentInfoEvent(NodeText_Changed);
myItemInfo.MyContent.Changed += new ContentInfoEvent(NodeText_Changed); myItemInfo.MyContent.Changed += new ContentInfoEvent(NodeText_Changed);
myItemInfo.OrdinalChanged -= new ItemInfoEvent(NodeText_Changed);
myItemInfo.OrdinalChanged += new ItemInfoEvent(NodeText_Changed); myItemInfo.OrdinalChanged += new ItemInfoEvent(NodeText_Changed);
myItemInfo.NewSiblingAfter -= new ItemInfoInsertEvent(myItemInfo_NewSiblingAfter);
myItemInfo.NewSiblingAfter += new ItemInfoInsertEvent(myItemInfo_NewSiblingAfter); myItemInfo.NewSiblingAfter += new ItemInfoInsertEvent(myItemInfo_NewSiblingAfter);
myItemInfo.NewSiblingBefore -= new ItemInfoInsertEvent(myItemInfo_NewSiblingBefore);
myItemInfo.NewSiblingBefore += new ItemInfoInsertEvent(myItemInfo_NewSiblingBefore); myItemInfo.NewSiblingBefore += new ItemInfoInsertEvent(myItemInfo_NewSiblingBefore);
myItemInfo.NewChild -= new ItemInfoInsertEvent(myItemInfo_NewChild);
myItemInfo.NewChild += new ItemInfoInsertEvent(myItemInfo_NewChild); myItemInfo.NewChild += new ItemInfoInsertEvent(myItemInfo_NewChild);
} }
} }
@@ -69,6 +69,7 @@ namespace Volian.Controls.Library
_AnnotationDetails = annotationDetails; _AnnotationDetails = annotationDetails;
cbAnnoType.DisplayMember = "Name"; cbAnnoType.DisplayMember = "Name";
cbAnnoType.DataSource = AnnotationTypeInfoList.Get(); cbAnnoType.DataSource = AnnotationTypeInfoList.Get();
lbResults.MouseMove -= new MouseEventHandler(lbResults_MouseMove);
lbResults.MouseMove += new MouseEventHandler(lbResults_MouseMove); lbResults.MouseMove += new MouseEventHandler(lbResults_MouseMove);
_TabControl = tc; _TabControl = tc;
} }
@@ -354,7 +354,10 @@ namespace Volian.Controls.Library
private void WireCheckboxes() private void WireCheckboxes()
{ {
foreach (CheckBox cb in MyCheckBoxes.Values) foreach (CheckBox cb in MyCheckBoxes.Values)
{
cb.CheckedChanged -= new EventHandler(cb_CheckedChanged);
cb.CheckedChanged += new EventHandler(cb_CheckedChanged); cb.CheckedChanged += new EventHandler(cb_CheckedChanged);
}
} }
private void UnwireCheckboxes(bool reset) private void UnwireCheckboxes(bool reset)
{ {
@@ -211,7 +211,9 @@ namespace Volian.Controls.Library
} }
_myRTB = value; _myRTB = value;
MyRTB.LinkChanged -= new StepRTBLinkEvent(MyRTB_LinkChanged);
MyRTB.LinkChanged += new StepRTBLinkEvent(MyRTB_LinkChanged); MyRTB.LinkChanged += new StepRTBLinkEvent(MyRTB_LinkChanged);
MyRTB.SelectionChanged -= new EventHandler(MyRTB_SelectionChanged);
MyRTB.SelectionChanged += new EventHandler(MyRTB_SelectionChanged); MyRTB.SelectionChanged += new EventHandler(MyRTB_SelectionChanged);
if (string.IsNullOrEmpty(MyRTB.MyLinkText)) if (string.IsNullOrEmpty(MyRTB.MyLinkText))
@@ -161,8 +161,11 @@ namespace Volian.Controls.Library
if (_MyROFSTLookup == null) return; if (_MyROFSTLookup == null) return;
advTreeRO.BeforeExpand -= new AdvTreeNodeCancelEventHandler(advTreeRO_BeforeExpand);
advTreeRO.BeforeExpand += new AdvTreeNodeCancelEventHandler(advTreeRO_BeforeExpand); advTreeRO.BeforeExpand += new AdvTreeNodeCancelEventHandler(advTreeRO_BeforeExpand);
advTreeRO.AfterExpand -= new AdvTreeNodeEventHandler(advTreeRO_AfterExpandorCollapse);
advTreeRO.AfterExpand += new AdvTreeNodeEventHandler(advTreeRO_AfterExpandorCollapse); advTreeRO.AfterExpand += new AdvTreeNodeEventHandler(advTreeRO_AfterExpandorCollapse);
advTreeRO.AfterCollapse -= new AdvTreeNodeEventHandler(advTreeRO_AfterExpandorCollapse);
advTreeRO.AfterCollapse += new AdvTreeNodeEventHandler(advTreeRO_AfterExpandorCollapse); advTreeRO.AfterCollapse += new AdvTreeNodeEventHandler(advTreeRO_AfterExpandorCollapse);
topnode = new DevComponents.AdvTree.Node(); topnode = new DevComponents.AdvTree.Node();
@@ -250,6 +253,7 @@ namespace Volian.Controls.Library
topnode.Tag = fi; topnode.Tag = fi;
} }
advTreeProcSets.BeforeExpand -= new DevComponents.AdvTree.AdvTreeNodeCancelEventHandler(advTreeProcSets_BeforeExpand);
advTreeProcSets.BeforeExpand += new DevComponents.AdvTree.AdvTreeNodeCancelEventHandler(advTreeProcSets_BeforeExpand); advTreeProcSets.BeforeExpand += new DevComponents.AdvTree.AdvTreeNodeCancelEventHandler(advTreeProcSets_BeforeExpand);
// position to the procedure set in the tree if we have a procedure open // position to the procedure set in the tree if we have a procedure open
@@ -468,7 +468,9 @@ namespace Volian.Controls.Library
lastLastFormatID = fv.FormatID; lastLastFormatID = fv.FormatID;
} }
} }
cbxTranVersion.SelectedIndexChanged -= new EventHandler(cbxTranVersion_SelectedIndexChanged);
cbxTranVersion.SelectedIndexChanged += new EventHandler(cbxTranVersion_SelectedIndexChanged); cbxTranVersion.SelectedIndexChanged += new EventHandler(cbxTranVersion_SelectedIndexChanged);
cbxTranFormat.SelectedIndexChanged -= new EventHandler(cbxTranFormat_SelectedIndexChanged);
cbxTranFormat.SelectedIndexChanged += new EventHandler(cbxTranFormat_SelectedIndexChanged); cbxTranFormat.SelectedIndexChanged += new EventHandler(cbxTranFormat_SelectedIndexChanged);
} }
this.Cursor = Cursors.Default; this.Cursor = Cursors.Default;
@@ -892,6 +894,7 @@ namespace Volian.Controls.Library
topnode.DataKey = fi.FolderID; topnode.DataKey = fi.FolderID;
} }
advTreeProcSets.BeforeExpand -= new DevComponents.AdvTree.AdvTreeNodeCancelEventHandler(advTreeProcSets_BeforeExpand);
advTreeProcSets.BeforeExpand += new DevComponents.AdvTree.AdvTreeNodeCancelEventHandler(advTreeProcSets_BeforeExpand); advTreeProcSets.BeforeExpand += new DevComponents.AdvTree.AdvTreeNodeCancelEventHandler(advTreeProcSets_BeforeExpand);
// position to the procedure set in the tree if we have a procedure open // position to the procedure set in the tree if we have a procedure open
@@ -986,6 +989,7 @@ namespace Volian.Controls.Library
annoTypes.Add(new AnnotationTypeSearch(ati.Name, ati.TypeID.ToString())); annoTypes.Add(new AnnotationTypeSearch(ati.Name, ati.TypeID.ToString()));
cbxAnnoTypes.DisplayMember = "Name"; cbxAnnoTypes.DisplayMember = "Name";
cbxAnnoTypes.DataSource = annoTypes; cbxAnnoTypes.DataSource = annoTypes;
lbSrchResults.MouseMove -= new MouseEventHandler(lbSrchResults_MouseMove);
lbSrchResults.MouseMove += new MouseEventHandler(lbSrchResults_MouseMove); lbSrchResults.MouseMove += new MouseEventHandler(lbSrchResults_MouseMove);
_TabControl = tc; _TabControl = tc;
} }
@@ -378,7 +378,10 @@ namespace Volian.Controls.Library
{ {
_MyStepRTB = _MyEditItem.MyStepRTB; _MyStepRTB = _MyEditItem.MyStepRTB;
if (_MyStepRTB != null) if (_MyStepRTB != null)
{
_MyStepRTB.Disposed -= new EventHandler(_MyStepRTB_Disposed);
_MyStepRTB.Disposed += new EventHandler(_MyStepRTB_Disposed); _MyStepRTB.Disposed += new EventHandler(_MyStepRTB_Disposed);
}
} }
else else
_MyStepRTB = null; _MyStepRTB = null;
@@ -469,6 +472,7 @@ namespace Volian.Controls.Library
myBar.DockTabControl.CloseButtonPosition = DevComponents.DotNetBar.eTabCloseButtonPosition.Right; myBar.DockTabControl.CloseButtonPosition = DevComponents.DotNetBar.eTabCloseButtonPosition.Right;
myBar.DockTabControl.Width = ClientRectangle.Width; myBar.DockTabControl.Width = ClientRectangle.Width;
} }
myBar.DockTabClosing -= new DockTabClosingEventHandler(myBar_DockTabClosing);
myBar.DockTabClosing += new DockTabClosingEventHandler(myBar_DockTabClosing); myBar.DockTabClosing += new DockTabClosingEventHandler(myBar_DockTabClosing);
if (!myBar.Visible) if (!myBar.Visible)
myBar.Visible = true; myBar.Visible = true;
@@ -566,6 +566,7 @@ namespace Volian.Controls.Library
startitm = startitm.GetNext(); startitm = startitm.GetNext();
} }
if (!setsel2) tvTran.SelectedNode = tvTran.Nodes[0]; if (!setsel2) tvTran.SelectedNode = tvTran.Nodes[0];
tvTran.BeforeExpand -= new TreeViewCancelEventHandler(tvTran_BeforeExpand);
tvTran.BeforeExpand += new TreeViewCancelEventHandler(tvTran_BeforeExpand); tvTran.BeforeExpand += new TreeViewCancelEventHandler(tvTran_BeforeExpand);
// bug fix. TreeView needs the next two lines to properly display the bottom node. jsj 01/08/2010 // bug fix. TreeView needs the next two lines to properly display the bottom node. jsj 01/08/2010
tvTran.ItemHeight++; tvTran.ItemHeight++;
@@ -599,6 +600,7 @@ namespace Volian.Controls.Library
startitm = startitm.GetNext(); startitm = startitm.GetNext();
} }
if (!setsel) tvTran.SelectedNode = tvTran.Nodes[0]; if (!setsel) tvTran.SelectedNode = tvTran.Nodes[0];
tvTran.BeforeExpand -= new TreeViewCancelEventHandler(tvTran_BeforeExpand);
tvTran.BeforeExpand += new TreeViewCancelEventHandler(tvTran_BeforeExpand); tvTran.BeforeExpand += new TreeViewCancelEventHandler(tvTran_BeforeExpand);
// bug fix. TreeView needs the next two lines to properly display the bottom node. jsj 01/08/2010 // bug fix. TreeView needs the next two lines to properly display the bottom node. jsj 01/08/2010
tvTran.ItemHeight++; tvTran.ItemHeight++;
@@ -214,10 +214,14 @@ namespace Volian.Controls.Library
UserCheckOffChar = (char)co.UIMark; UserCheckOffChar = (char)co.UIMark;
} }
// Deal with changes in content data // Deal with changes in content data
value.MyContent.Changed -= new ContentInfoEvent(MyContent_Changed);
value.MyContent.Changed += new ContentInfoEvent(MyContent_Changed); value.MyContent.Changed += new ContentInfoEvent(MyContent_Changed);
value.MyProcedure.MyContent.Changed -= new ContentInfoEvent(MyContent_Changed);
value.MyProcedure.MyContent.Changed += new ContentInfoEvent(MyContent_Changed); value.MyProcedure.MyContent.Changed += new ContentInfoEvent(MyContent_Changed);
// Deal with change in item data // Deal with change in item data
value.Changed -= new ItemInfoEvent(value_Changed);
value.Changed += new ItemInfoEvent(value_Changed); value.Changed += new ItemInfoEvent(value_Changed);
value.OrdinalChanged -= new ItemInfoEvent(value_OrdinalChanged);
value.OrdinalChanged += new ItemInfoEvent(value_OrdinalChanged); value.OrdinalChanged += new ItemInfoEvent(value_OrdinalChanged);
// do something like this to draw circle around step numbers - note got NULL reference error on NSP data // do something like this to draw circle around step numbers - note got NULL reference error on NSP data
//if (value.FormatStepData != null && value.FormatStepData.TabData.IdentPrint.Contains("C0")) Circle = true; //if (value.FormatStepData != null && value.FormatStepData.TabData.IdentPrint.Contains("C0")) Circle = true;
@@ -3997,9 +4001,13 @@ namespace Volian.Controls.Library
if (!itemInfo.IsStep) // C2025-036 reduce un-needed processing - this will prevent duplicat calls that generate step tabs when loading a procedure if (!itemInfo.IsStep) // C2025-036 reduce un-needed processing - this will prevent duplicat calls that generate step tabs when loading a procedure
SetupHeader(itemInfo); SetupHeader(itemInfo);
SetupAlarmTableView(itemInfo); // C2021-018 display alarm point table information in the step editor (if the format flag is set) SetupAlarmTableView(itemInfo); // C2021-018 display alarm point table information in the step editor (if the format flag is set)
this.Paint -= new PaintEventHandler(EditItem_Paint);
this.Paint += new PaintEventHandler(EditItem_Paint); this.Paint += new PaintEventHandler(EditItem_Paint);
this.BackColorChanged -= new EventHandler(EditItem_BackColorChanged);
this.BackColorChanged += new EventHandler(EditItem_BackColorChanged); this.BackColorChanged += new EventHandler(EditItem_BackColorChanged);
this.Move -= new EventHandler(EditItem_Move);
this.Move += new EventHandler(EditItem_Move); this.Move += new EventHandler(EditItem_Move);
this.Resize -= new EventHandler(EditItem_Resize);
this.Resize += new EventHandler(EditItem_Resize); this.Resize += new EventHandler(EditItem_Resize);
if (itemInfo != null) if (itemInfo != null)
{ {
@@ -4050,6 +4058,7 @@ namespace Volian.Controls.Library
SeqLevel = myParentEditItem.SeqLevel + ((myChildRelation == ChildRelation.After || myChildRelation == ChildRelation.Before) && itemInfo.IsSequential ? 1 : 0); SeqLevel = myParentEditItem.SeqLevel + ((myChildRelation == ChildRelation.After || myChildRelation == ChildRelation.Before) && itemInfo.IsSequential ? 1 : 0);
//// TIMING: DisplayItem.TimeIt("CSLARTB seqLevel"); //// TIMING: DisplayItem.TimeIt("CSLARTB seqLevel");
MyItemInfo = itemInfo; MyItemInfo = itemInfo;
MyItemInfo.MyConfig.PropertyChanged -= new PropertyChangedEventHandler(MyConfig_PropertyChanged);
MyItemInfo.MyConfig.PropertyChanged += new PropertyChangedEventHandler(MyConfig_PropertyChanged); MyItemInfo.MyConfig.PropertyChanged += new PropertyChangedEventHandler(MyConfig_PropertyChanged);
} }
//// TIMING: DisplayItem.TimeIt("CSLARTB MyItem"); //// TIMING: DisplayItem.TimeIt("CSLARTB MyItem");