C#小错误!!思路整理

 int day = Int32.Parse(txtPrice.Text);
            double p = 0;
            if (listView1.SelectedItems.Count == 0)
            {
                MessageBox.Show("请选择一个需要结算的车辆");
            }
            else
            {

     //控件的选择项的文本内容
                string key = listView1.SelectedItems[0].Text;

    //调用子类的费用算法
                p = rentVehicles[key].CalcPrice(day);
                MessageBox.Show("费用为:" + p.ToString() + "元");
                vehicle.Add(key, rentVehicles[key]);
                rentVehicles.Remove(key);
                listView1.SelectedItems.Clear();
                Get(rentVehicles, listView1);
            }

 小结:当选定Listview的其中一个选项时,通过泛型(每个泛型相当于一个对象。可以直接点出来方法!!前提2个继承类需要有相同方法)! 这是思路问题!!

 

 

C# Listview的绑定

//传递泛型和控件参数,做到同一页面的传参!一个方法多次应用

 private void Get(Dictionary<string, Vehicle> vehicle, ListView list)
        {
            list.Items.Clear();
            foreach (Vehicle vh in vehicle.Values)
            {

    //1步
                ListViewItem items = new ListViewItem(vh.LicenseNo);
                if (vh is Car)
                {

    //2步
                    items.SubItems.AddRange(new string[] { vh.Name, vh.Color, vh.YearsOfService.ToString(), vh.Dailyren.ToString(), "无" });
                }
                else if (vh is Truck)
                {
                    items.SubItems.AddRange(new string[] { vh.Name, vh.Color, vh.YearsOfService.ToString(), vh.Dailyren.ToString(), ((Truck)vh).Load.ToString() });
                }

    //3步
                list.Items.Add(items);
            }
        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值