点击和焦点事件

private void text_GotFocus(object sender, EventArgs e)
        {
            using (var db = new FiDbContext())
            {
                ComboBoxLink com = (ComboBoxLink)sender;

                if (com.ItemsSource == null)
                {
                    //科目绑定
                    List<Fi_Subject> sub = db.Subjects.ToList();
                    ComboBox aa = new ComboBox();

                    // aa.ItemsSource
                    //com.ItemSource = new ObservableCollection<Fi_Subject>(sub);
                    com.ItemsSource = new ObservableCollection<Fi_Subject>(sub);
                    com.DisplayMemberPath = "Name";
                    com.SelectedValuePath = "ID";

                    //com.SelectedValue = "1";
                }
            }
        }
        private void textT_LostFocus(object sender, RoutedEventArgs e)
        {
            CompreFunction data = new CompreFunction();
            //失去焦点文本如为负数修改前景色为Red  
            TextBox tt = (TextBox)sender;
            if (tt.Text != "")
            {
                decimal isok = decimal.Parse(tt.Text);
                if (isok < 0)
                {
                    tt.Foreground = new SolidColorBrush(Colors.Red);
                    tt.Text = (isok * (-1)).ToString();
                }
            }
            int rows = MainGrid.RowDefinitions.Count - 1;
            TextBlock text = FindChild<TextBlock>(Application.Current.MainWindow, ("tbkSum" + rows + 3));
            TextBlock textTwo = FindChild<TextBlock>(Application.Current.MainWindow, ("tbkSum" + rows + 2));
            TextBlock textFirst = FindChild<TextBlock>(Application.Current.MainWindow, ("tbkSum" + rows + 0));
            decimal Sum = 0;
            for (int r = 1; r < rows; r++)
            {
                TextBox texts = FindChild<TextBox>(Application.Current.MainWindow, ("text" + r + 3));
                if (!string.IsNullOrWhiteSpace(texts.Text))
                {
                    if (texts.Foreground.ToString() == "#FFFF0000")
                    {
                        Sum = Sum + (decimal.Parse(texts.Text.ToString()) * (-1));
                    }
                    else
                    {
                        Sum = Sum + decimal.Parse(texts.Text.ToString());
                    }
                }
            }

            if (Sum < 0)
            {
                Sum = Sum * (-1);
                text.Foreground = new SolidColorBrush(Colors.Red);
            }
            else
            {
                text.Foreground = new SolidColorBrush(Colors.Black);
            }
            text.Text = Sum.ToString();
            if (text.Text != "" && textTwo.Text != "")
            {
                if (text.Foreground.ToString() == "#FFFF0000" && textTwo.Foreground.ToString() == "#FFFF0000")
                {
                    if (decimal.Parse(text.Text) == decimal.Parse(textTwo.Text) && decimal.Parse(text.Text) != 0 && decimal.Parse(textTwo.Text) != 0)
                    {
                        textFirst.Text = "合计:负" + data.CmycurD(Sum);
                        textFirst.Foreground = new SolidColorBrush(Colors.Red);
                    }
                    else
                    {
                        textFirst.Text = "合计:";
                        textFirst.Foreground = new SolidColorBrush(Colors.Black);
                    }
                }
                if ((text.Foreground.ToString() == "#FFFF0000" && textTwo.Foreground.ToString() != "#FFFF0000") || (text.Foreground.ToString() != "#FFFF0000" && textTwo.Foreground.ToString() == "#FFFF0000"))
                {
                    textFirst.Text = "合计:";
                    textFirst.Foreground = new SolidColorBrush(Colors.Black);
                }
                if (text.Foreground.ToString() != "#FFFF0000" && textTwo.Foreground.ToString() != "#FFFF0000")
                {
                    if (decimal.Parse(text.Text) == decimal.Parse(textTwo.Text) && decimal.Parse(text.Text) != 0 && decimal.Parse(textTwo.Text) != 0)
                    {
                        textFirst.Text = "合计:" + data.CmycurD(Sum);
                    }
                    else
                    {
                        textFirst.Text = "合计:";
                        textFirst.Foreground = new SolidColorBrush(Colors.Black);
                    }
                }
            }
        }

        private void text_LostFocus(object sender, RoutedEventArgs e)
        {
            CompreFunction data = new CompreFunction();
            TextBox tt = (TextBox)sender;
            if (tt.Text != "")
            {
                decimal isok = decimal.Parse(tt.Text);
                if (isok < 0)
                {
                    tt.Foreground = new SolidColorBrush(Colors.Red);
                    tt.Text = (isok * (-1)).ToString();
                }
            }
            int rows = MainGrid.RowDefinitions.Count - 1;
            TextBlock text = FindChild<TextBlock>(Application.Current.MainWindow, ("tbkSum" + rows + 2));
            TextBlock textLast = FindChild<TextBlock>(Application.Current.MainWindow, ("tbkSum" + rows + 3));
            TextBlock textFirst = FindChild<TextBlock>(Application.Current.MainWindow, ("tbkSum" + rows + 0));
            decimal Sum = 0;
            for (int r = 1; r < rows; r++)
            {
                TextBox texts = FindChild<TextBox>(Application.Current.MainWindow, ("text" + r + 2));
                if (!string.IsNullOrWhiteSpace(texts.Text))
                {
                    if (texts.Foreground.ToString() == "#FFFF0000")
                    {
                        Sum = Sum + (decimal.Parse(texts.Text.ToString()) * (-1));
                    }
                    else
                    {
                        Sum = Sum + decimal.Parse(texts.Text.ToString());
                    }
                }
            }
            if (Sum < 0)
            {
                Sum = Sum * (-1);
                text.Foreground = new SolidColorBrush(Colors.Red);
            }
            else
            {
                text.Foreground = new SolidColorBrush(Colors.Black);
            }
            text.Text = Sum.ToString();
            if (text.Text != "" && textLast.Text != "")
            {
                if (text.Foreground.ToString() == "#FFFF0000" && textLast.Foreground.ToString() == "#FFFF0000")
                {
                    if (decimal.Parse(text.Text) == decimal.Parse(textLast.Text) && decimal.Parse(text.Text) != 0 && decimal.Parse(textLast.Text) != 0)
                    {
                        textFirst.Text = "合计:负" + data.CmycurD(Sum);
                        textFirst.Foreground = new SolidColorBrush(Colors.Red);
                    }
                    else
                    {
                        textFirst.Text = "合计:";
                        textFirst.Foreground = new SolidColorBrush(Colors.Black);
                    }
                }
                if ((text.Foreground.ToString() == "#FFFF0000" && textLast.Foreground.ToString() != "#FFFF0000") || (text.Foreground.ToString() != "#FFFF0000" && textLast.Foreground.ToString() == "#FFFF0000"))
                {
                    textFirst.Text = "合计:";
                    textFirst.Foreground = new SolidColorBrush(Colors.Black);
                }
                if (text.Foreground.ToString() != "#FFFF0000" && textLast.Foreground.ToString() != "#FFFF0000")
                {
                    if (decimal.Parse(text.Text) == decimal.Parse(textLast.Text) && decimal.Parse(text.Text) != 0 && decimal.Parse(textLast.Text) != 0)
                    {
                        textFirst.Text = "合计:" + data.CmycurD(Sum);
                    }
                    else
                    {
                        textFirst.Text = "合计:";
                        textFirst.Foreground = new SolidColorBrush(Colors.Black);
                    }
                }
            }
        }

        private void textCol_LinkClick(object sender, EventArgs e)
        {
            ComboBoxLink link = (ComboBoxLink)sender;
            SelectAllSubject select = new SelectAllSubject(link);
            this.ShowMessageWindow(select, "科目", 500, 600);
        }

 

转载于:https://www.cnblogs.com/happinesshappy/p/5018316.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值