首页 > 解决方案 > 将列表框中的项目显示到文本框

问题描述

我正在尝试将 CSV 文件中的项目显示到列表框(这部分有效),然后在单独的标签中显示该项目的各个部分。

public partial class InventoryForm : Form
    {
        public InventoryForm()
        {
            InitializeComponent();
        }

public List<ItemsList> itemsLists(string csvPath)
        {
            var query = from l in File.ReadAllLines(csvPath)
                        let data = l.Split('|')
                        select new ItemsList
                        {
                            Name = data[0],
                            Type = data[1],
                            DMGTyp = data[2],
                            DMG = data[3],
                            Weight = int.Parse(data[4]),
                            Price = int.Parse(data[5]),
                            Description = data[5]
                        };
            return query.ToList();
        }
        private void btnBrowse_Click(object sender, EventArgs e)
        {
            OpenFileDialog filePath = new OpenFileDialog();
            filePath.ShowDialog();
            textBox1.Text = filePath.FileName;
        }

        private void btnLoad_Click(object sender, EventArgs e)
        {
            listBox1.DataSource = itemsLists(textBox1.Text);
        }

        private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            //to do show individual pieces in labels
            
        }
    public class ItemsList
    {
        public string Name { get; set; }
        public string Type { get; set; }
        public string DMGTyp { get; set; }
        public string DMG { get; set; }
        public int Weight { get; set; }
        public int  Price { get; set; }
        public string Description { get; set; }
    }
}



这些项目分为 6 个部分,列表框只显示项目的名称,但我希望标签显示项目的其余属性。关于如何做到这一点的任何线索?

标签: c#winforms

解决方案


推荐阅读