Exemple #1
0
 public static void blinkSearchButton_Stop(SearchWindow searchWindow0, Button button0)
 {
     if (searchWindow0 == BlackoutWindow.unvisibleSearchWindow) {
         BlackoutWindow.unvisibleSearchWindow = null;
         //
         button0.BeginAnimation(Button.OpacityProperty, null);
         button0.Opacity = 1;
         button0.Effect = null;
     }
 }
Exemple #2
0
 /// <summary>
 /// Hide()した検索ウィンドウがあることを知らせるため、検索ボタンを点滅させる
 /// </summary>
 /// <param name="button0"></param>
 /// <param name="isBlink0"></param>
 public static void blinkSearchButton_Start(SearchWindow searchWindow0, Button button0)
 {
     BlackoutWindow.unvisibleSearchWindow = searchWindow0;
     //
     button0.Effect = new System.Windows.Media.Effects.DropShadowEffect();
     var animation = new System.Windows.Media.Animation.DoubleAnimation {
         From = 1.0,
         To = 0.7,
         RepeatBehavior = System.Windows.Media.Animation.RepeatBehavior.Forever,
         AutoReverse = true
     };
     button0.BeginAnimation(Button.OpacityProperty, animation);
 }
        public LocalAnimationExample()
        {
            WindowTitle = "Local Animation Example";
            var myStackPanel = new StackPanel {Margin = new Thickness(20)};


            // Create and set the Button.
            var aButton = new Button {Content = "A Button"};

            // Animate the Button's Width.
            var myDoubleAnimation = new DoubleAnimation
            {
                From = 75,
                To = 300,
                Duration = new Duration(TimeSpan.FromSeconds(5)),
                AutoReverse = true,
                RepeatBehavior = RepeatBehavior.Forever
            };

            // Apply the animation to the button's Width property.
            aButton.BeginAnimation(WidthProperty, myDoubleAnimation);

            // Create and animate a Brush to set the button's Background.
            var myBrush = new SolidColorBrush {Color = Colors.Blue};

            var myColorAnimation = new ColorAnimation
            {
                From = Colors.Blue,
                To = Colors.Red,
                Duration = new Duration(TimeSpan.FromMilliseconds(7000)),
                AutoReverse = true,
                RepeatBehavior = RepeatBehavior.Forever
            };

            // Apply the animation to the brush's Color property.
            myBrush.BeginAnimation(SolidColorBrush.ColorProperty, myColorAnimation);
            aButton.Background = myBrush;

            // Add the Button to the panel.
            myStackPanel.Children.Add(aButton);
            Content = myStackPanel;
        }
 //图标的height动画效果,1个重载,true表示出现,false表示消失动画
 //height表示图标的高度,time表示动画时间
 //此处为button的方法
 private void Icon_Animation1(Button sender, bool appear , double height ,double time)
 {
     double distanceFrom,distanceTo;
     if (appear == true)
     {
         distanceFrom = 0;
         distanceTo = height;
     }
     else
     {
         distanceFrom = height;
         distanceTo = 0;
     }
     DoubleAnimation heighAnimation = new DoubleAnimation();
     heighAnimation.From = distanceFrom;
     heighAnimation.To = distanceTo;
     //线性差值需规定起点终点
     heighAnimation.Duration = TimeSpan.FromSeconds(time);
     //实现动画的时间
     sender.BeginAnimation(Button.HeightProperty, heighAnimation);
 }
Exemple #5
0
 private void btn_ToSmall(Button btn)
 {
     Launcher launcher = (Launcher)btn.Tag;
     DoubleAnimation anim = AnimButtonSize(btn.Width, launcher.Width);
     btn.BeginAnimation(Button.WidthProperty, anim);
     btn.BeginAnimation(Button.HeightProperty, anim);
 }
Exemple #6
0
 private void btn_ToLarge(Button btn)
 {
     btn.Focus();
     Launcher launcher = (Launcher)btn.Tag;
     DoubleAnimation anim = AnimButtonSize(btn.Width, launcher.Width * 1.2);
     btn.BeginAnimation(Button.WidthProperty, anim);
     btn.BeginAnimation(Button.HeightProperty, anim);
 }
        private async void FindDiagnosis()
        {
            var panelgradient = new LinearGradientBrush()
            {
                StartPoint = new Point(0.5, 0),
                EndPoint = new Point(0.5, 1)
            };
            panelgradient.GradientStops.Add(new GradientStop() {Color = Color.FromArgb(255, 255, 255, 255), Offset = 0});
            panelgradient.GradientStops.Add(new GradientStop() {Color = Color.FromArgb(198, 250, 225, 4), Offset = 1});
            var panelAllDiagnosis = new DockPanel
            {
                Background = panelgradient,
                Margin = new Thickness(15, 15, 15, 15),
                Visibility = Visibility.Hidden
            };
            var labelstartdiagnosis = new Label
            {
                Content = "Діагнози",
                Foreground = Brushes.MediumBlue,
                FontWeight = FontWeights.Bold
            };
            DockPanel.SetDock(labelstartdiagnosis, Dock.Top);
            panelAllDiagnosis.Children.Add(labelstartdiagnosis);
            DockPanel.SetDock(panelAllDiagnosis, Dock.Top);
            PatientPanel.Children.Add(panelAllDiagnosis);

            foreach (var disease in _listPatientDiagnosis.Where(disease => CheckBoxViewDiagnosisDepartment.IsChecked == null || (!CheckBoxViewDiagnosisDepartment.IsChecked.Value || disease.IdDepartment == Worker.IdDepartment)))
            {
                panelAllDiagnosis.Visibility = Visibility.Visible;
                if (disease.IdWorker == "0" && disease.Snp == "0")
                {
                    WpfMessageBox.Show("Відсутнє підключення до сервера. \n Зверніться до адміністратора!");
                    Close();
                }
                var paneldiagnosis1 = new DockPanel
                {
                    Background = Brushes.LightSkyBlue,
                    Margin = new Thickness(15, 15, 15, 15)
                };
                var paneldiagnosis = new DockPanel
                {
                    Background = Brushes.WhiteSmoke,
                    Margin = new Thickness(3, 3, 3, 3)
                };
                var photoDiagnosisScrollViewer = new ScrollViewer
                {
                    VerticalScrollBarVisibility = ScrollBarVisibility.Disabled,
                    HorizontalScrollBarVisibility = ScrollBarVisibility.Auto,
                    CanContentScroll = true
                };
                var paneldiagnosisphoto = new DockPanel
                {
                    Background = Brushes.WhiteSmoke,
                    Margin = new Thickness(3, 3, 3, 3)
                };
                var disease2 = disease;
                foreach (var loadPhotoDiagnosis in LoadPhotoDiagnosis.PhotoDiagnosis.Where(loadPhotoDiagnosis => loadPhotoDiagnosis.IdDiagnosis == disease2.IdDiagnosis))
                {
                    var photo = await LoadPhoto(loadPhotoDiagnosis.Photo);
                    var buttonPhotoDiagnosis = new Button
                    {
                        Background = new ImageBrush(photo),
                        Foreground = Brushes.MediumBlue,
                        FontWeight = FontWeights.Bold,
                        Content = " ",
                        Height = 160,
                        Width = 160,
                        HorizontalAlignment = HorizontalAlignment.Left,
                    };
                    buttonPhotoDiagnosis.Click += (o, args) =>
                    {
                        var form = new PhotoInfo(photo);
                        form.Show();
                    };
                    DockPanel.SetDock(paneldiagnosisphoto, Dock.Top);
                    paneldiagnosisphoto.Children.Add(buttonPhotoDiagnosis);
                }
                var labeldiagnosis = new Label
                {

                    Content = string.Format(
                        "Захворювання: {0} \n Діагноз: {1} \n Лікування: {2} \n Дата встановлення захворювання: {3}\n Лікар: {4}",
                        disease.NameDisease,
                        disease.Disease,
                        disease.Treatment,
                        disease.DateOnset,
                        disease.Snp),
                    Margin = new Thickness(10, 10, 10, 10),
                };

                var panelallprocedure = new DockPanel
                {
                    Background = Brushes.LightSkyBlue,
                    Margin = new Thickness(0, 0, 0, 0),
                };
                var intProcedure = 0;
                foreach (var procedure in Procedure.ListProcedure)
                {
                    if (procedure.IdDiagnosis != disease.IdDiagnosis) continue;
                    var panelprocedure1 = new DockPanel
                    {
                        Background = new SolidColorBrush(Color.FromRgb(244, 244, 40)),
                        Margin = new Thickness(5, 5, 5, 5),
                    };

                    var panelprocedure = new DockPanel
                    {
                        Background = Brushes.LightSteelBlue,
                        Margin = new Thickness(3, 3, 3, 3),
                    };
                    var photoProcedureScrollViewer = new ScrollViewer
                    {
                        VerticalScrollBarVisibility = ScrollBarVisibility.Disabled,
                        HorizontalScrollBarVisibility = ScrollBarVisibility.Auto,
                        CanContentScroll = true
                    };
                    var panelprocedurephoto = new DockPanel
                    {
                        Background = Brushes.WhiteSmoke,
                        Margin = new Thickness(3, 3, 3, 3)
                    };
                    foreach (var loadPhotoProcedure in LoadPhotoProcedure.PhotoProcedures)
                    {
                        if (loadPhotoProcedure.IdProcedure != procedure.IdProcedure)
                        {
                            var photo = await LoadPhoto(loadPhotoProcedure.Photo);
                            var buttonPhotoProcedure = new Button
                            {
                                Background = new ImageBrush(photo),
                                Foreground = Brushes.MediumBlue,
                                FontWeight = FontWeights.Bold,
                                Content = " ",
                                Height = 160,
                                Width = 160,
                                HorizontalAlignment = HorizontalAlignment.Left,
                            };
                            buttonPhotoProcedure.Click += (o, args) =>
                            {
                                var form = new PhotoInfo(photo);
                                form.Show();
                            };
                            DockPanel.SetDock(buttonPhotoProcedure, Dock.Left);
                            panelprocedurephoto.Children.Add(buttonPhotoProcedure);

                        }
                    }
                    var labelprocedure = new Label
                    {
                        Content = string.Format(
                            "Процедура: {0} \n Результат: {1} \n Дата: {2} \n Лікар: {3}",
                            procedure.NameProcedure,
                            procedure.Result,
                            procedure.DateOnset,
                            procedure.Snp),
                        Margin = new Thickness(10, 10, 10, 10),
                    };
                    intProcedure = intProcedure + 1;
                    photoProcedureScrollViewer.Content = panelprocedurephoto;
                    photoProcedureScrollViewer.PreviewMouseWheel += (o, args) =>
                    {
                        if (args.Delta > 0)
                        {
                            ScrollViewerFull.ScrollToVerticalOffset(ScrollViewerFull.VerticalOffset - 48);
                        }

                        else
                        {
                            ScrollViewerFull.ScrollToVerticalOffset(ScrollViewerFull.VerticalOffset + 48);
                        }
                    };
                    DockPanel.SetDock(panelprocedurephoto, Dock.Top);
                    DockPanel.SetDock(panelprocedure1, Dock.Top);
                    DockPanel.SetDock(panelprocedure, Dock.Top);
                    DockPanel.SetDock(labelprocedure, Dock.Top);
                    panelprocedure.Children.Add(labelprocedure);
                    panelprocedure.Children.Add(photoProcedureScrollViewer);
                    panelprocedure1.Children.Add(panelprocedure);
                    panelallprocedure.Children.Add(panelprocedure1);
                    var procedure1 = procedure;
                    labelprocedure.MouseDoubleClick += (o, args) =>
                    {
                        var form = new WorkerInfo(procedure1.IdWorker);
                        form.ShowDialog();
                    };
                }
                if (intProcedure != 0)
                {
                    var gradient = new LinearGradientBrush {StartPoint = new Point(0, 0), EndPoint = new Point(1, 1)};
                    var buttonopenprocedure = new Button
                    {
                        Background = gradient,
                        Foreground = Brushes.MediumBlue,
                        FontWeight = FontWeights.Bold,
                        Content = "Переглянути процедури",
                        Height = 20,
                        Width = 450
                    };
                    gradient.GradientStops.Add(new GradientStop
                    {
                        Color = Color.FromArgb(255, 249, 249, 200),
                        Offset = 0
                    });
                    gradient.GradientStops.Add(new GradientStop
                    {
                        Color = Color.FromArgb(255, 251, 228, 0),
                        Offset = 1
                    });
                    DockPanel.SetDock(buttonopenprocedure, Dock.Bottom);
                    paneldiagnosis1.Children.Add(buttonopenprocedure);
                    panelallprocedure.Measure(new Size(double.PositiveInfinity, double.PositiveInfinity));
                    panelallprocedure.Arrange(new Rect(new Point(0, 0), panelallprocedure.DesiredSize));
                    var panelHeight = panelallprocedure.ActualHeight;
                    panelallprocedure.Height = 0;
                    var isToggle = new bool();
                    buttonopenprocedure.Click += (o, args) =>
                    {
                        var da = new DoubleAnimation();
                        if (!isToggle)
                        {
                            da.From = 450;
                            da.To = 800;
                            da.Duration = TimeSpan.FromSeconds(0.5);
                            buttonopenprocedure.BeginAnimation(WidthProperty, da);
                            da.From = 0;
                            da.To = panelHeight;
                            da.Duration = TimeSpan.FromSeconds(0.5);
                            panelallprocedure.BeginAnimation(HeightProperty, da);
                            isToggle = true;
                            buttonopenprocedure.Content = "Закрити";

                        }
                        else
                        {
                            da.From = 800;
                            da.To = 450;
                            da.Duration = TimeSpan.FromSeconds(0.5);
                            buttonopenprocedure.BeginAnimation(WidthProperty, da);
                            da.From = panelHeight;
                            da.To = 0;
                            da.Duration = TimeSpan.FromSeconds(0.5);
                            panelallprocedure.BeginAnimation(HeightProperty, da);
                            isToggle = false;
                            buttonopenprocedure.Content = "Переглянути процедури";
                        }
                    };
                }
                DockPanel.SetDock(paneldiagnosis1, Dock.Top);
                DockPanel.SetDock(panelallprocedure, Dock.Top);
                DockPanel.SetDock(paneldiagnosis, Dock.Top);
                photoDiagnosisScrollViewer.Content = paneldiagnosisphoto;
                photoDiagnosisScrollViewer.PreviewMouseWheel += (o, args) =>
                {
                    if (args.Delta > 0)
                    {
                        ScrollViewerFull.ScrollToVerticalOffset(ScrollViewerFull.VerticalOffset - 48);
                    }

                    else
                    {
                        ScrollViewerFull.ScrollToVerticalOffset(ScrollViewerFull.VerticalOffset + 48);
                    }
                };
                DockPanel.SetDock(paneldiagnosisphoto, Dock.Top);
                DockPanel.SetDock(labeldiagnosis, Dock.Top);
                paneldiagnosis.Children.Add(labeldiagnosis);
                paneldiagnosis.Children.Add(photoDiagnosisScrollViewer);
                paneldiagnosis1.Children.Add(paneldiagnosis);
                paneldiagnosis1.Children.Add(panelallprocedure);
                panelAllDiagnosis.Children.Add(paneldiagnosis1);
                var disease1 = disease;
                labeldiagnosis.MouseDoubleClick += (o, args) =>
                {
                    var form = new WorkerInfo(disease1.IdWorker);
                    form.ShowDialog();
                };
                PatientPanel.Visibility = Visibility.Visible;
            }
        }
        private async void FindVisit()
        {
            foreach (var acceptance in Acceptance.ListAcceptance)
            {
                if (DateTime.Parse(acceptance.Date).Date>= DateTime.Now.Date && acceptance.PatientIdPatient==Patient.IdPatient)
                {
                    WpfMessageBox.Show("Пацієнт записаний на прийом!\n "+"Дата: "+acceptance.Date+" Час: "+acceptance.Time);
                }
            }
            var panelgradient = new LinearGradientBrush()
            {
                StartPoint = new Point(0.5, 0),
                EndPoint = new Point(0.5, 1)
            };
            panelgradient.GradientStops.Add(new GradientStop {Color = Color.FromArgb(255, 255, 255, 255), Offset = 0});
            panelgradient.GradientStops.Add(new GradientStop {Color = Color.FromArgb(128, 255, 255, 255), Offset = 1});
            var panelAllVisit = new DockPanel
            {

                Margin = new Thickness(15, 15, 15, 15),
                Visibility = Visibility.Hidden,
                Background = panelgradient
            };

            var labelstartvisit = new Label
            {
                Content = "Записи",
                Foreground = Brushes.MediumBlue,
                FontWeight = FontWeights.Bold
            };
            DockPanel.SetDock(labelstartvisit, Dock.Top);
            panelAllVisit.Children.Add(labelstartvisit);
            DockPanel.SetDock(panelAllVisit, Dock.Top);
            PatientPanel.Children.Add(panelAllVisit);
            foreach (var visit in _listPatientVisits.Where(visit => CheckBoxViewDiagnosisDepartment.IsChecked == null || (!CheckBoxViewDiagnosisDepartment.IsChecked.Value || visit.IdDepartment == Worker.IdDepartment)))
            {
                panelAllVisit.Visibility = Visibility.Visible;
                if (visit.IdWorker == "0" && visit.Snp == "0")
                {
                    WpfMessageBox.Show("Відсутнє підключення до сервера. \n Зверніться до адміністратора!");
                    Close();
                }
                var panelvisit1 = new DockPanel
                {
                    Background = Brushes.LightSkyBlue,
                    Margin = new Thickness(15, 15, 15, 15),
                };

                var panelvisit = new DockPanel
                {
                    Background = Brushes.WhiteSmoke,
                    Margin = new Thickness(3, 3, 3, 3),
                };
                var photoVisitsScrollViewer = new ScrollViewer
                {
                    VerticalScrollBarVisibility = ScrollBarVisibility.Disabled,
                    HorizontalScrollBarVisibility = ScrollBarVisibility.Auto,
                    CanContentScroll = true

                };
                var panelvisitphoto = new DockPanel
                {
                    Background = Brushes.WhiteSmoke,
                    Margin = new Thickness(3, 3, 3, 3)
                };
                var visit2 = visit;
                foreach (var loadPhotoVisits in LoadPhotoVisits.PhotoVisits.Where(loadPhotoVisits => loadPhotoVisits.IdVisits == visit2.IdVisit))
                {
                    var photo = await LoadPhoto(loadPhotoVisits.Photo);
                    var buttonPhotoVisits = new Button
                    {
                        Background = new ImageBrush(photo),
                        Foreground = Brushes.MediumBlue,
                        FontWeight = FontWeights.Bold,
                        Content = " ",
                        Height = 160,
                        Width = 160,
                        HorizontalAlignment = HorizontalAlignment.Left
                    };

                    buttonPhotoVisits.Click += (o, args) =>
                    {
                        var form = new PhotoInfo(photo);
                        form.Show();
                    };
                    DockPanel.SetDock(panelvisitphoto, Dock.Top);
                    panelvisitphoto.Children.Add(buttonPhotoVisits);
                }
                var labelvisit = new Label
                {

                    Content = string.Format(
                        "Причина: {0} \n Скарги: {1} \n Огляд: {2} \n Дата: {3}\n Лікар: {4} ",
                        visit.Reason,
                        visit.Complaints,
                        visit.Inspection,
                        visit.VisitDateOnset,
                        visit.Snp),
                    Margin = new Thickness(10, 10, 10, 10),
                };

                var panelallanalysis = new DockPanel
                {
                    Background = Brushes.LightSkyBlue,
                    Margin = new Thickness(0, 0, 0, 0),
                };
                var intAnalysis = 0;
                foreach (var analysis in Analysis.ListAnalysis)
                {
                    if (analysis.IdVisit != visit.IdVisit) continue;
                    var panelanalysis1 = new DockPanel
                    {
                        Background = new SolidColorBrush(Color.FromRgb(244, 244, 40)),
                        Margin = new Thickness(5, 5, 5, 5),
                    };

                    var panelanalysis = new DockPanel
                    {
                        Background = Brushes.LightSteelBlue,
                        Margin = new Thickness(3, 3, 3, 3),
                    };
                    var photoAnalysisScrollViewer = new ScrollViewer
                    {
                        VerticalScrollBarVisibility = ScrollBarVisibility.Disabled,
                        HorizontalScrollBarVisibility = ScrollBarVisibility.Auto,
                        CanContentScroll = true

                    };
                    var panelanalysisphoto = new DockPanel
                    {
                        Background = Brushes.WhiteSmoke,
                        Margin = new Thickness(3, 3, 3, 3)
                    };
                    foreach (var loadPhotoAnalysis in LoadPhotoAnalysis.PhotoAnalysis)
                    {
                        if (loadPhotoAnalysis.IdAnalysis == analysis.IdAnalysis)
                        {
                            var photo = await LoadPhoto(loadPhotoAnalysis.Photo);
                            var buttonPhotoAnalysis = new Button
                            {
                                Background = new ImageBrush(photo),
                                Foreground = Brushes.MediumBlue,
                                FontWeight = FontWeights.Bold,
                                Content = " ",
                                Height = 160,
                                Width = 160,
                                HorizontalAlignment = HorizontalAlignment.Left,
                            };
                            buttonPhotoAnalysis.Click += (o, args) =>
                            {
                                var form = new PhotoInfo(photo);
                                form.Show();
                            };
                            DockPanel.SetDock(buttonPhotoAnalysis, Dock.Left);
                            panelanalysisphoto.Children.Add(buttonPhotoAnalysis);
                        }
                    }
                    var labelanalysis = new Label
                    {

                        Content = string.Format(
                            "Назва: {0} \n Показники: {1} \n Заключення: {2} \n Дата: {3} \n Лікар: {4}",
                            analysis.NameAnalysis,
                            analysis.Indicators,
                            analysis.Result,
                            analysis.AnalysisDateOnset,
                            analysis.Snp),
                        Margin = new Thickness(10, 10, 10, 10),
                    };
                    intAnalysis = intAnalysis + 1;
                    photoAnalysisScrollViewer.Content = panelanalysisphoto;
                    photoAnalysisScrollViewer.PreviewMouseWheel += (o, args) =>
                    {
                        if (args.Delta > 0)
                        {
                            ScrollViewerFull.ScrollToVerticalOffset(ScrollViewerFull.VerticalOffset - 48);
                        }

                        else
                        {
                            ScrollViewerFull.ScrollToVerticalOffset(ScrollViewerFull.VerticalOffset + 48);
                        }
                    };
                    DockPanel.SetDock(panelallanalysis, Dock.Top);
                    DockPanel.SetDock(panelanalysis1, Dock.Top);
                    DockPanel.SetDock(panelanalysis, Dock.Top);
                    DockPanel.SetDock(labelanalysis, Dock.Top);
                    panelanalysis.Children.Add(labelanalysis);
                    panelanalysis.Children.Add(photoAnalysisScrollViewer);
                    panelanalysis1.Children.Add(panelanalysis);
                    panelallanalysis.Children.Add(panelanalysis1);
                    var analysis1 = analysis;
                    labelanalysis.MouseDoubleClick += (o, args) =>
                    {
                        var form = new WorkerInfo(analysis1.IdWorker);
                        form.ShowDialog();
                    };
                }
                if (intAnalysis != 0)
                {
                    var gradient = new LinearGradientBrush {StartPoint = new Point(0, 0), EndPoint = new Point(1, 1)};
                    var buttonopenanalisis = new Button
                    {
                        Background = gradient,
                        Foreground = Brushes.MediumBlue,
                        FontWeight = FontWeights.Bold,
                        Content = "Переглянути аналізи",
                        Height = 20,
                        Width = 450
                    };
                    gradient.GradientStops.Add(new GradientStop
                    {
                        Color = Color.FromArgb(255, 249, 249, 200),
                        Offset = 0
                    });
                    gradient.GradientStops.Add(new GradientStop
                    {
                        Color = Color.FromArgb(255, 251, 228, 0),
                        Offset = 1
                    });

                    DockPanel.SetDock(buttonopenanalisis, Dock.Bottom);
                    panelvisit1.Children.Add(buttonopenanalisis);
                    panelallanalysis.Measure(new Size(double.PositiveInfinity, double.PositiveInfinity));
                    panelallanalysis.Arrange(new Rect(new Point(0, 0), panelallanalysis.DesiredSize));
                    var panelHeight = panelallanalysis.ActualHeight;
                    panelallanalysis.Height = 0;
                    var isToggle = new bool();
                    buttonopenanalisis.Click += (o, args) =>
                    {
                        var da = new DoubleAnimation();
                        if (!isToggle)
                        {
                            da.From = 450;
                            da.To = 800;
                            da.Duration = TimeSpan.FromSeconds(0.5);
                            buttonopenanalisis.BeginAnimation(WidthProperty, da);
                            da.From = 0;
                            da.To = panelHeight;
                            da.Duration = TimeSpan.FromSeconds(0.5);
                            panelallanalysis.BeginAnimation(HeightProperty, da);
                            isToggle = true;
                            buttonopenanalisis.Content = "Закрити";

                        }
                        else
                        {
                            da.From = 800;
                            da.To = 450;
                            da.Duration = TimeSpan.FromSeconds(0.5);
                            buttonopenanalisis.BeginAnimation(WidthProperty, da);
                            da.From = panelHeight;
                            da.To = 0;
                            da.Duration = TimeSpan.FromSeconds(0.5);
                            panelallanalysis.BeginAnimation(HeightProperty, da);
                            isToggle = false;
                            buttonopenanalisis.Content = "Переглянути аналізи";
                        }
                    };
                }
                DockPanel.SetDock(panelvisit1, Dock.Top);
                DockPanel.SetDock(panelallanalysis, Dock.Top);
                DockPanel.SetDock(panelvisit, Dock.Top);
                photoVisitsScrollViewer.Content = panelvisitphoto;
                photoVisitsScrollViewer.PreviewMouseWheel += (o, args) =>
                {
                    if (args.Delta > 0)
                    {
                        ScrollViewerFull.ScrollToVerticalOffset(ScrollViewerFull.VerticalOffset - 48);
                    }

                    else
                    {
                        ScrollViewerFull.ScrollToVerticalOffset(ScrollViewerFull.VerticalOffset + 48);
                    }
                };
                DockPanel.SetDock(panelvisitphoto, Dock.Top);
                DockPanel.SetDock(labelvisit, Dock.Top);
                panelvisit.Children.Add(labelvisit);
                panelvisit.Children.Add(photoVisitsScrollViewer);
                panelvisit1.Children.Add(panelvisit);
                panelvisit1.Children.Add(panelallanalysis);
                panelAllVisit.Children.Add(panelvisit1);
                var visit1 = visit;
                labelvisit.MouseDoubleClick += (o, args) =>
                {
                    var form = new WorkerInfo(visit1.IdWorker);
                    form.ShowDialog();
                };
                PatientPanel.Visibility = Visibility.Visible;
            }
        }
 private void animationFade(Button btn, double from, double to, int duration)
 {
     DoubleAnimation animationFade = new DoubleAnimation();
     animationFade.From = from;
     animationFade.To = to;
     animationFade.Duration = new Duration(TimeSpan.FromMilliseconds(duration));
     btn.BeginAnimation(Button.OpacityProperty, animationFade);
 }
        private void FindVisit(List<Visit> list)
        {
            LinearGradientBrush panelgradient = new LinearGradientBrush()
            {
                StartPoint = new Point(0.5, 0),
                EndPoint = new Point(0.5, 1)
            };
            panelgradient.GradientStops.Add(new GradientStop() {Color = Color.FromArgb(255, 255, 255, 255), Offset = 0});
            panelgradient.GradientStops.Add(new GradientStop() {Color = Color.FromArgb(128, 255, 255, 255), Offset = 1});
            DockPanel panelAllVisit = new DockPanel
            {

                Margin = new Thickness(15, 15, 15, 15),
                Visibility = Visibility.Hidden,
                Background = panelgradient
            };

            Label labelstartvisit = new Label
            {
                Content = "Записи",
                Foreground = Brushes.MediumBlue,
                FontWeight = FontWeights.Bold
            };
            DockPanel.SetDock(labelstartvisit, Dock.Top);
            panelAllVisit.Children.Add(labelstartvisit);
            DockPanel.SetDock(panelAllVisit, Dock.Top);
            PatientsPanel.Children.Add(panelAllVisit);
            foreach (Visit visit in list)
            {
                panelAllVisit.Visibility = Visibility.Visible;
                if (visit.IdWorker == "0" && visit.Snp == "0")
                {
                    WpfMessageBox.Show("Відсутнє підключення до сервера. \n Зверніться до адміністратора!");
                    Close();
                }
                DockPanel panelvisit1 = new DockPanel
                {
                    Background = Brushes.LightSkyBlue,
                    Margin = new Thickness(15, 15, 15, 15),
                };

                DockPanel panelvisit = new DockPanel
                {
                    Background = Brushes.WhiteSmoke,
                    Margin = new Thickness(3, 3, 3, 3),
                };


                Label labelvisit = new Label
                {

                    Content = string.Format(
                        "Причина: {0} \n Скарги: {1} \n Огляд: {2} \n Дата: {3}\n Лікар: {4} ",
                        visit.Reason,
                        visit.Complaints,
                        visit.Inspection,
                        visit.VisitDateOnset,
 visit.Snp),
                    Margin = new Thickness(10, 10, 10, 10),
                };

                DockPanel panelallanalysis = new DockPanel
                {
                    Background = Brushes.LightSkyBlue,
                    Margin = new Thickness(0, 0, 0, 0),
                };
                int intAnalysis = 0;
                foreach (var analysis in Analysis.ListAnalysis)
                {
                    if (analysis.IdVisit == visit.IdVisit)
                    {
                        DockPanel panelanalysis1 = new DockPanel
                        {
                            Background = new SolidColorBrush(Color.FromRgb(244, 244, 40)),
                            Margin = new Thickness(5, 5, 5, 5),
                        };

                        DockPanel panelanalysis = new DockPanel
                        {
                            Background = Brushes.LightSteelBlue,
                            Margin = new Thickness(3, 3, 3, 3),
                        };


                        Label labelanalysis = new Label
                        {

                            Content = string.Format(
                                "Назва: {0} \n Показники: {1} \n Заключення: {2} \n Дата: {3} \n Лікар: {4}",
                                analysis.NameAnalysis,
                                analysis.Indicators,
                                analysis.Result,
                                analysis.AnalysisDateOnset,
                                analysis.Snp),
                            Margin = new Thickness(10, 10, 10, 10),
                        };
                        intAnalysis = intAnalysis + 1;
                        DockPanel.SetDock(panelanalysis1, Dock.Top);
                        DockPanel.SetDock(panelanalysis, Dock.Top);
                        DockPanel.SetDock(labelanalysis, Dock.Top);
                        panelanalysis.Children.Add(labelanalysis);
                        panelanalysis1.Children.Add(panelanalysis);
                        panelallanalysis.Children.Add(panelanalysis1);
                        var analysis1 = analysis;
                        labelanalysis.MouseDoubleClick += (o, args) =>
                        {
                            PatientInfo form = new PatientInfo(analysis1.IdPatient);
                            form.ShowDialog();
                        };
                    }
                }
                if (intAnalysis != 0)
                {
                    LinearGradientBrush gradient = new LinearGradientBrush();
                    gradient.StartPoint = new Point(0, 0);
                    gradient.EndPoint = new Point(1, 1);
                    Button buttonopenanalisis = new Button
                    {
                        Background = gradient,
                        Foreground = Brushes.MediumBlue,
                        FontWeight = FontWeights.Bold,
                        Content = "Переглянути аналізи",
                        Height = 20,
                        Width = 450
                    };
                    gradient.GradientStops.Add(new GradientStop()
                    {
                        Color = Color.FromArgb(255, 249, 249, 200),
                        Offset = 0
                    });
                    gradient.GradientStops.Add(new GradientStop()
                    {
                        Color = Color.FromArgb(255, 251, 228, 0),
                        Offset = 1
                    });

                    DockPanel.SetDock(buttonopenanalisis, Dock.Bottom);
                    panelvisit1.Children.Add(buttonopenanalisis);
                    panelallanalysis.Measure(new Size(double.PositiveInfinity, double.PositiveInfinity));
                    panelallanalysis.Arrange(new Rect(new Point(0, 0), panelallanalysis.DesiredSize));
                    double panelHeight = panelallanalysis.ActualHeight;
                    panelallanalysis.Height = 0;
                    bool isToggle = new bool();
                    buttonopenanalisis.Click += (o, args) =>
                    {
                        DoubleAnimation da = new DoubleAnimation();
                        if (!isToggle)
                        {
                            da.From = 450;
                            da.To = 800;
                            da.Duration = TimeSpan.FromSeconds(1);
                            buttonopenanalisis.BeginAnimation(WidthProperty, da);
                            da.From = 0;
                            da.To = panelHeight;
                            da.Duration = TimeSpan.FromSeconds(1);
                            panelallanalysis.BeginAnimation(HeightProperty, da);
                            isToggle = true;
                            buttonopenanalisis.Content = "Закрити";

                        }
                        else
                        {
                            da.From = 800;
                            da.To = 450;
                            da.Duration = TimeSpan.FromSeconds(1);
                            buttonopenanalisis.BeginAnimation(WidthProperty, da);
                            da.From = panelHeight;
                            da.To = 0;
                            da.Duration = TimeSpan.FromSeconds(1);
                            panelallanalysis.BeginAnimation(HeightProperty, da);
                            isToggle = false;
                            buttonopenanalisis.Content = "Переглянути процедури";
                        }
                    };
                }
                DockPanel.SetDock(panelvisit1, Dock.Top);
                DockPanel.SetDock(panelallanalysis, Dock.Top);
                DockPanel.SetDock(panelvisit, Dock.Top);
                DockPanel.SetDock(labelvisit, Dock.Top);
                panelvisit.Children.Add(labelvisit);
                panelvisit1.Children.Add(panelvisit);
                panelvisit1.Children.Add(panelallanalysis);
                panelAllVisit.Children.Add(panelvisit1);
                var visit1 = visit;
                labelvisit.MouseDoubleClick += (o, args) =>
                {
                    PatientInfo form = new PatientInfo(visit1.IdPatient);
                    form.ShowDialog();
                };
                PatientsPanel.Visibility = Visibility.Visible;
            }
        }
        private void FindDiagnosis(List<Diagnosis> list)
        {
            LinearGradientBrush panelgradient = new LinearGradientBrush()
            {
                StartPoint = new Point(0.5, 0),
                EndPoint = new Point(0.5, 1)
            };
            panelgradient.GradientStops.Add(new GradientStop() {Color = Color.FromArgb(255, 255, 255, 255), Offset = 0});
            panelgradient.GradientStops.Add(new GradientStop() {Color = Color.FromArgb(198, 250, 225, 4), Offset = 1});
            DockPanel panelAllDiagnosis = new DockPanel
            {
                Background = panelgradient,
                Margin = new Thickness(15, 15, 15, 15),
                Visibility = Visibility.Hidden
            };
            Label labelstartdiagnosis = new Label
            {
                Content = "Діагнози",
                Foreground = Brushes.MediumBlue,
                FontWeight = FontWeights.Bold
            };
            DockPanel.SetDock(panelAllDiagnosis, Dock.Top);
            PatientsPanel.Children.Add(panelAllDiagnosis);
            DockPanel.SetDock(labelstartdiagnosis, Dock.Top);
            panelAllDiagnosis.Children.Add(labelstartdiagnosis);

            foreach (Diagnosis disease in list)
            {
                panelAllDiagnosis.Visibility = Visibility.Visible;
                if (disease.IdWorker == "0" && disease.Snp == "0")
                {
                    WpfMessageBox.Show("Відсутнє підключення до сервера. \n Зверніться до адміністратора!");
                    Close();
                }
                DockPanel paneldiagnosis1 = new DockPanel
                {
                    Background = Brushes.LightSkyBlue,
                    Margin = new Thickness(15, 15, 15, 15),
                };

                DockPanel paneldiagnosis = new DockPanel
                {
                    Background = Brushes.WhiteSmoke,
                    Margin = new Thickness(3, 3, 3, 3),
                };


                Label labeldiagnosis = new Label
                {

                    Content = string.Format(
                        "Назва: {0} \n Діагноз: {1} \n Лікування: {2} \n Дата встановлення захворювання: {3}\n Лікар: {4}",
                        disease.Disease,
                        disease.Disease,
                        disease.Treatment,
                        disease.DateOnset,
                        disease.Snp),
                    Margin = new Thickness(10, 10, 10, 10),
                };

                DockPanel panelallprocedure = new DockPanel
                {
                    Background = Brushes.LightSkyBlue,
                    Margin = new Thickness(0, 0, 0, 0),
                };
                int intProcedure = 0;
                foreach (var procedure in Procedure.ListProcedure)
                {
                    if (procedure.IdDiagnosis == disease.IdDiagnosis)
                    {
                        DockPanel panelprocedure1 = new DockPanel
                        {
                            Background = new SolidColorBrush(Color.FromRgb(244, 244, 40)),
                            Margin = new Thickness(5, 5, 5, 5),
                        };

                        DockPanel panelprocedure = new DockPanel
                        {
                            Background = Brushes.LightSteelBlue,
                            Margin = new Thickness(3, 3, 3, 3),
                        };


                        Label labelprocedure = new Label
                        {

                            Content = string.Format(
                                "Процедура: {0} \n Результат: {1} \n Дата: {2} \n Лікар: {3}",
                                procedure.NameProcedure,
                                procedure.Result,
                                procedure.DateOnset,
                                procedure.Snp),
                            Margin = new Thickness(10, 10, 10, 10),
                        };
                        intProcedure = intProcedure + 1;
                        DockPanel.SetDock(panelprocedure1, Dock.Top);
                        DockPanel.SetDock(panelprocedure, Dock.Top);
                        DockPanel.SetDock(labelprocedure, Dock.Top);
                        panelprocedure.Children.Add(labelprocedure);
                        panelprocedure1.Children.Add(panelprocedure);
                        panelallprocedure.Children.Add(panelprocedure1);
                        var procedure1 = procedure;
                        labelprocedure.MouseDoubleClick += (o, args) =>
                        {
                            PatientInfo form = new PatientInfo(procedure1.IdPatient);
                            form.ShowDialog();
                        };
                    }
                }
                if (intProcedure != 0)
                {
                    LinearGradientBrush gradient = new LinearGradientBrush();
                    gradient.StartPoint = new Point(0, 0);
                    gradient.EndPoint = new Point(1, 1);
                    Button buttonopenprocedure = new Button
                    {
                        Background = gradient,
                        Foreground = Brushes.MediumBlue,
                        FontWeight = FontWeights.Bold,
                        Content = "Переглянути процедури",
                        Height = 20,
                        Width = 450
                    };
                    gradient.GradientStops.Add(new GradientStop()
                    {
                        Color = Color.FromArgb(255, 249, 249, 200),
                        Offset = 0
                    });
                    gradient.GradientStops.Add(new GradientStop()
                    {
                        Color = Color.FromArgb(255, 251, 228, 0),
                        Offset = 1
                    });

                    DockPanel.SetDock(buttonopenprocedure, Dock.Bottom);
                    paneldiagnosis1.Children.Add(buttonopenprocedure);
                    panelallprocedure.Measure(new Size(double.PositiveInfinity, double.PositiveInfinity));
                    panelallprocedure.Arrange(new Rect(new Point(0, 0), panelallprocedure.DesiredSize));
                    double panelHeight = panelallprocedure.ActualHeight;
                    panelallprocedure.Height = 0;
                    bool isToggle = new bool();
                    buttonopenprocedure.Click += (o, args) =>
                    {
                        DoubleAnimation da = new DoubleAnimation();
                        if (!isToggle)
                        {
                            da.From = 450;
                            da.To = 800;
                            da.Duration = TimeSpan.FromSeconds(1);
                            buttonopenprocedure.BeginAnimation(WidthProperty, da);
                            da.From = 0;
                            da.To = panelHeight;
                            da.Duration = TimeSpan.FromSeconds(1);
                            panelallprocedure.BeginAnimation(HeightProperty, da);
                            isToggle = true;
                            buttonopenprocedure.Content = "Закрити";

                        }
                        else
                        {
                            da.From = 800;
                            da.To = 450;
                            da.Duration = TimeSpan.FromSeconds(1);
                            buttonopenprocedure.BeginAnimation(WidthProperty, da);
                            da.From = panelHeight;
                            da.To = 0;
                            da.Duration = TimeSpan.FromSeconds(1);
                            panelallprocedure.BeginAnimation(HeightProperty, da);
                            isToggle = false;
                            buttonopenprocedure.Content = "Переглянути процедури";
                        }
                    };
                }
                DockPanel.SetDock(paneldiagnosis1, Dock.Top);
                DockPanel.SetDock(panelallprocedure, Dock.Top);
                DockPanel.SetDock(paneldiagnosis, Dock.Top);
                DockPanel.SetDock(labeldiagnosis, Dock.Top);
                paneldiagnosis.Children.Add(labeldiagnosis);
                paneldiagnosis1.Children.Add(paneldiagnosis);
                paneldiagnosis1.Children.Add(panelallprocedure);
                panelAllDiagnosis.Children.Add(paneldiagnosis1);
                var disease1 = disease;
                labeldiagnosis.MouseDoubleClick += (o, args) =>
                {
                    PatientInfo form = new PatientInfo(disease1.IdPatient);
                    form.ShowDialog();
                };
                PatientsPanel.Visibility = Visibility.Visible;
            }
        }