WPF利用构造函数和委托进行跨窗体传值

​
Page_CustomerVip  WPF page页

//委托的声明
public delegate void Del_WuCan();

#region 事件列表
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            Button btn = e.OriginalSource as Button;
            switch(btn.Name)
            {
                case "FaKa":
                    Win_EditCustomerVip winEcv = new Win_EditCustomerVip();
                    winEcv._BindCi = this.BindCardInfo; 
                    this.SetParentPage(winEcv);
                    winEcv.ShowDialog();
                break;
                case "btnChongZhi":
                    Win_ReadCard winRd = new Win_ReadCard(this.BindCardInfo);

//这里传的是Page_CustomerVip的一个获取会员信息的列表
                    this.SetParentPage(winRd);
                    winRd.ShowDialog();
                break;
            }
        }

#endregion



Win_ReadCard 中间过度窗体

       /// <summary>
        /// 委托变量
        /// </summary>

Del_WuCan _dc = null;



public Win_ReadCard(Del_WuCan dc)
        {
            InitializeComponent();
            _dc = dc;

        }

Win_PayCard 最后使用的值窗体

      /// <summary>
        /// 委托变量
        /// </summary>
        public Del_WuCan _BindCi = null;



#region

public Win_PayCard(Del_WuCan bc, int operType)
        {
            InitializeComponent();
            _BindCi = bc;
            this.tb_PayMoney.Value = 100;
            this.tb_PayMoney.Focus();
            OperType = operType;
            if (operType == 0)
            {
                this.tc_PayMoney.Visibility = System.Windows.Visibility.Visible;
            }
            else
            {
                this.tc_PayMoney.Visibility = System.Windows.Visibility.Collapsed;
            }

        }

#endregion

#region 充值
        private void CongZi()
        {
            try
            {
                CardRecord cr = new CardRecord();
                cr.CardID = strCardId;
                cr.SerialNumber = Common.StrCaoZuoLiuShuiHao;
                cr.TradingDate = DateTime.Now;
                cr.TradingMoney = decimal.Parse(this.tb_PayMoney.Value.ToString());
                cr.TradingType = Convert.ToInt32(TradeType.借入);

                CardManager.CongZi(cr);
                MessageBox.Show("充值成功!");
                _BindCi();
                this.Close();

                

                //MainWindow mw = new MainWindow();
                //mw.Show();
                //this.Hide();//当前窗体隐藏
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
        #endregion

​

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值