Пример #1
0
        //----< load getDirs processing into dispatcher dictionary >-------

        private void DispatcherLoadGetDirs()
        {
            Action <CsMessage> getDirs = (CsMessage rcvMsg) =>
            {
                Action clrDirs = () =>
                {
                    NavChkOut.clearDirs();
                    NavBrowse.clearDirs();
                    NavChkIn.clearDirsR();
                };
                Dispatcher.Invoke(clrDirs, new Object[] { });
                var enumer = rcvMsg.attributes.GetEnumerator();
                while (enumer.MoveNext())
                {
                    string key = enumer.Current.Key;
                    if (key.Contains("dir"))
                    {
                        Action <string> doDir = (string dir) =>
                        {
                            NavChkOut.addDir(dir);
                            NavBrowse.addDir(dir);
                            NavChkIn.addDirR(dir);
                        };
                        Dispatcher.Invoke(doDir, new Object[] { enumer.Current.Value });
                    }
                }
                Action insertUp = () =>
                {
                    NavChkOut.insertParent();
                    NavBrowse.insertParent();
                    NavChkIn.insertParentR();
                };
                Dispatcher.Invoke(insertUp, new Object[] { });
            };

            addClientProc("getDirs", getDirs);
        }