Exemplo n.º 1
0
        /// <summary>
        /// 等待直到查找线程返回
        /// </summary>
        public bool WaitLoadData()
        {
            //if (m_loadingThread != null && m_loadingThread.IsAlive)
            //{
            //    m_loadingThread.Join();
            //}
            if (m_asyncManager != null)
            {
                WorkerDoneEventArgs <DataLoadedEventArgs> e = m_asyncManager.WaitForWorker();
                LoadWork_WorkerDone(m_asyncManager, e);

                return(true);
            }
            return(false);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Occur when Load Thread is done
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected virtual void LoadWork_WorkerDone(object sender, WorkerDoneEventArgs <DataLoadedEventArgs> e)
        {
            // 当中途停止,e.Interrupted = true, result = null;
            DataLoadedEventArgs e2 = e.Result;

            try
            {
                if (this.DisplayManager != null && e2 != null && e2.DataSource != null)
                {
                    this.DisplayManager.SetDataBinding(e2.DataSource, string.Empty);
                }
            }
            finally
            {
                OnDataLoaded(e2);
            }

            if (e.Exception != null)
            {
                ExceptionProcess.ProcessWithNotify(e.Exception);
            }
        }
Exemplo n.º 3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected override void LoadWork_WorkerDone(object sender, WorkerDoneEventArgs <DataLoadedEventArgs> e)
        {
            m_isReload = false;

            base.LoadWork_WorkerDone(sender, e);
        }