C#小错误!!思路整理

    技术2026-05-15  17

     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);            }        }

    最新回复(0)