示例#1
0
        private void UpdateClientStatus(BaseClass.QueryData replydataobj)
        {
            string strPath  = "";
            bool   Shutdown = false;

            foreach (BaseClass.ObjectMetaData omd in replydataobj.ArrCounter)
            {
                switch (omd.Tag)
                {
                case "Path":
                    strPath = omd.Text;

                    //text = omd.Text;
                    break;

                case "ForceClose":

                    ForceClose = true;

                    break;

                case "Shutdown":

                    Shutdown = true;
                    break;

                case "Voting":


                    //  XmlDataProvider xml = new XmlDataProvider();
                    var stringReader = new System.IO.StringReader(omd.Text);
                    var serialaizer  = new System.Xml.Serialization.XmlSerializer(typeof(Model.Ballot));
                    var obj          = serialaizer.Deserialize(stringReader);

                    var ballot = obj as Model.Ballot;

                    if (SCUtility.CurrentSessionUser == null)
                    {
                        SCUtility.AuthenticateProccess();
                    }

                    if (SCUtility.CurrentSessionUser != null && ballot != null)
                    {
                        ballot.SessionUser = SCUtility.CurrentSessionUser;
                        //if (!string.IsNullOrEmpty(ballot.BallotViewerClassName))
                        //{

                        //    var assembly = Assembly.Load(ballot.RefrenceAssemblly);
                        //    if (assembly != null)
                        //    {
                        //        var winObject = assembly.CreateInstance(ballot.BallotViewerClassName);

                        //        var ballotViewer = winObject as IBallotViewer;

                        //        if (ballotViewer != null)
                        //        {
                        //            ballotViewer.ShowBallot(ballot.BollotMetaData);
                        //        }
                        //    }
                        //}
                        //else
                        {
                            var win      = new Views.BallotRegisterView();
                            var vmBallot = new ViewModel.BallotViewModel();
                            vmBallot.CurrentModel = obj as Model.Ballot;
                            win.DataContext       = vmBallot;
                            win.ShowDialog();
                        }
                    }



                    break;



                default:
                    break;
                }
            }



            if (Shutdown)
            {
                ForceClose = true;
                System.Diagnostics.Process.Start("shutdown", "-s -t 10");
                Close();
                return;
            }

            if (ForceClose)
            {
                Close();
                return;
            }

            if (!string.IsNullOrEmpty(strPath))
            {
                toolBar.bar.Path = strPath;
            }

            if (vm != null && vm.CurrentViewItem != null && vm.CurrentViewItem.ObjectViewer != null)
            {
                vm.CurrentViewItem.ObjectViewer.FillMetaData(replydataobj.ArrCounter);
            }
        }
示例#2
0
 private void tsbtnSave_Click(object sender, EventArgs e)
 {
     SCUtility.SaveSetting();
 }