【问题标题】:How to do replace for all listbox items at once如何一次替换所有列表框项目
【发布时间】:2019-09-08 23:44:08
【问题描述】:

我正在尝试制作音乐名称更改程序。但是我必须替换列表框中的所有项目才能在 File.Move() 中使用它们。我尝试了一些东西,但我认为我需要将列表框项作为字符串来替换它们。

   private void button7_Click(object sender, EventArgs e){
        for (int i = 0; i < listBox1.Items.Count; i++)
        {
            listBox2.Items.Add(listBox1.Items[i].ToString());
        }
    }

我需要一次替换列表框项目才能在 File.Move() 中使用它们

【问题讨论】:

  • 您可能想查看BindingListDatasources。另外,您的问题对于您需要立即替换它们以在File.Move() 中使用它们的声明没有多大意义,您的意思是什么?
  • 如果这是 WPF,那么您可以简单地将一个新集合分配给包含修改后名称的 ListBoxlistBox2.ItemsSource = new ObservableCollection&lt;string&gt;(renamedItems);
  • @Icepickle 好问题...
  • @BionicCode 对不起,WPF 是什么
  • 他在问你是使用 Windows Presentation Foundation (wpf) 还是 Winforms(我假设是 winforms

标签: c# winforms listbox


【解决方案1】:

这里的每个人都是我制作的正确代码。它真的很棒。

  private void button7_Click(object sender, EventArgs e)
    {
        var list = new List<string>();

        foreach (var item in listBox1.Items)
        {
            list.Add(item.ToString());
            listBox2.Items.Add(item.ToString().Replace("_", " "));
        }
    }

【讨论】:

  • 为什么你有一个list 变量,你为什么使用ToString() 两次?为什么只替换listBox2。您似乎拥有大量带有 Control+Number 名称的控件,这不会让您在将来轻松了解控件包含的内容。
猜你喜欢
  • 2016-08-02
  • 2021-10-23
  • 1970-01-01
  • 2021-01-23
  • 2014-08-22
  • 1970-01-01
  • 1970-01-01
  • 2014-04-28
  • 2022-01-14
相关资源
最近更新 更多