예제 #1
0
        public void Open()
        {
            if (Active = InternalOpen())
            {
                m_colMax  = m_colMin = m_settings.ColStart;
                m_columns = m_view.ExportColumns(m_settings.OnlyVisible).ToList();
                m_colMax += m_columns.Count() - 1;

                // блокировка изменений таблицы на время первоначальной выгрузки
                using (var viewLocker = new ViewLocker(m_view))
                {
                    AllExport(this, null);
                    m_view.DatasetChanged += ResetExport;
                    m_view.DatasetChanged += AllExport;
                }
            }
        }
예제 #2
0
        public void Dispose()
        {
            using (var viewLocker = new ViewLocker(m_view))
            {
                m_view.DatasetChanged -= ResetExport;
                m_view.DatasetChanged -= AllExport;
            }

            m_view    = null;
            m_columns = null;

            ExcelDDEManager.Instance.Close(this);

            Active = false;

            if (OnDisposed != null)
            {
                OnDisposed();
            }
        }