Imports System.IO Imports System.Collections.ObjectModel Imports EgtWPFLib5 Public Class CompoType Inherits VMBase ' Folder Door Private m_FolderList As New ObservableCollection(Of CompoBrandDir) Public Property FolderList As ObservableCollection(Of CompoBrandDir) Get Return m_FolderList End Get Set(value As ObservableCollection(Of CompoBrandDir)) m_FolderList = value End Set End Property ' Folder Frame Private m_FrameFolderList As New ObservableCollection(Of CompoBrandDir) Public Property FrameFolderList As ObservableCollection(Of CompoBrandDir) Get Return m_FrameFolderList End Get Set(value As ObservableCollection(Of CompoBrandDir)) m_FrameFolderList = value End Set End Property ' Folder Hardware Private m_HardwareFolderList As New ObservableCollection(Of CompoBrandDir) Public Property HardwareFolderList As ObservableCollection(Of CompoBrandDir) Get Return m_HardwareFolderList End Get Set(value As ObservableCollection(Of CompoBrandDir)) m_HardwareFolderList = value End Set End Property Private m_IsSelectedBtn As Boolean = False Public Property IsSelectedBtn As Boolean Get Return m_IsSelectedBtn End Get Set(value As Boolean) m_IsSelectedBtn = value NotifyPropertyChanged("IsSelectedBtn") End Set End Property Private m_Name As String Public ReadOnly Property Name As String Get Return m_Name End Get End Property Public Sub SetName(Name As String) m_Name = Name End Sub Private m_DDFName As String Public ReadOnly Property DDFName As String Get Return m_DDFName End Get End Property Public Sub SetDDFName(DDFName As String) m_DDFName = DDFName End Sub Private m_Path As String Public ReadOnly Property Path As String Get Return m_Path End Get End Property Public Sub SetPath(Path As String) m_Path = Path End Sub Private m_JambSide As String Public ReadOnly Property JambSide As String Get Return m_JambSide End Get End Property Public Sub SetJambSide(JambSide As String) m_JambSide = JambSide End Sub Private m_FolderName As String Public ReadOnly Property FolderName As String Get Return m_FolderName End Get End Property Public Sub SetFolderName(FolderName As String) m_FolderName = FolderName End Sub Public Function LoadListTemplate() As Boolean FolderList.Clear() m_HardwareFolderList.Clear() m_FrameFolderList.Clear() m_FolderList.Clear() GetDirectoryCompoModel(m_Path, m_FolderList, m_FrameFolderList, m_HardwareFolderList) Return True End Function Public Function DeepCopy() As CompoType Dim other As CompoType = DirectCast(Me.MemberwiseClone, CompoType) other.LoadListTemplate() Return other End Function Sub New(sName As String, sDDFName As String, sPath As String, sJambSide As String, sFolderName As String) m_Name = sName m_DDFName = sDDFName m_Path = sPath m_JambSide = sJambSide m_FolderName = sFolderName LoadListTemplate() End Sub End Class