예제 #1
0
        private void Button_Click(object sender, EventArgs e)
        {
            int iTempDowOrder  = 0;
            int iTempEdgeOrder = 0;

            switch (((Button)sender).Name)
            {
            case "btnOrder":
                delFunction        delDow     = new delFunction(LF_DowPrice);
                delFunction        delEdge    = new delFunction(LF_EdgePrice);
                delFunctionTopping delTopping = null;
                if (rdoOriginal.Checked)
                {
                    iTempDowOrder = 1;
                }
                else if (rdoThin.Checked)
                {
                    iTempDowOrder = 2;
                }

                //delDow(iTempDowOrder);

                if (rdoRich.Checked)
                {
                    iTempEdgeOrder = 1;
                }
                else if (rdoCheese.Checked)
                {
                    iTempEdgeOrder = 2;
                }

                //delEdge(iTempEdgeOrder);
                LF_CallBackDelegate(iTempDowOrder, delDow);
                LF_CallBackDelegate(iTempEdgeOrder, delEdge);
                if (cbxSauage.Checked)
                {
                    delTopping += LF_ToppingSauage;
                    //delTopping = new delFunctionTopping(LF_ToppingSauage);
                }
                //else if (cbxCheese.Checked)
                //{
                //    delTopping += LF_ToppingCheese;
                //    delTopping = new delFunctionTopping(LF_ToppingCheese);
                //}
                //else if (cbxPotato.Checked)
                //{
                //    delTopping += LF_ToppingPotato;
                //    delTopping = new delFunctionTopping(LF_ToppingCheese);
                //}

                if (cbxCheese.Checked)
                {
                    delTopping += LF_ToppingCheese;
                }
                if (cbxPotato.Checked)
                {
                    delTopping += LF_ToppingPotato;
                }

                delTopping("Topping", (int)numCount.Value);

                break;

            case "btnCancel":
                break;

            default:
                break;
            }
        }
예제 #2
0
 public int LF_CallBackDelegate(int p_i, delFunction p_delFunction)
 {
     return(p_delFunction(p_i));
 }
예제 #3
0
 public static void DelegateCaller(delFunction func)
 {
     Console.WriteLine(func());
 }