0

我知道我没有以最简单的方式解决这个问题,但我对 C# 还很陌生。我试图确保当我从 5 个选中的列表框中的 1、2、3 或 4 个中选择时,我不会得到以下结果

&& 或 &&& 等...我希望最终字符串为 xxxxx&xxxxxx&xxx 或类似的字符串,因为该字符串已添加到预设的 SQL 查询中。

代码如下:

任何帮助将不胜感激我已经在网上四处寻找一些帮助,但没有找到太多我能够得到的帮助。

        List<object> list = checkedListBox1.CheckedItems.OfType<object>().ToList();
        List<object> list2 = checkedListBox2.CheckedItems.OfType<object>().ToList();
        List<object> list3 = checkedListBox3.CheckedItems.OfType<object>().ToList();
        List<object> list4 = checkedListBox4.CheckedItems.OfType<object>().ToList();
        List<object> list5 = checkedListBox5.CheckedItems.OfType<object>().ToList();


        string selected_fields_cb1 = string.Join(" ", list.ToArray());
        string selected_fields_cb2 = string.Join(" ", list2.ToArray());
        string selected_fields_cb3 = string.Join(" ", list3.ToArray());
        string selected_fields_cb4 = string.Join(" ", list4.ToArray());
        string selected_fields_cb5 = string.Join(" ", list5.ToArray());


        string allSelected = (selected_fields_cb1 + " " + selected_fields_cb2 + " " + selected_fields_cb3 +
           " " + selected_fields_cb4 + " " + selected_fields_cb5 + "");
        string allSelected2 = allSelected.Replace( " ", "&" );
        string allSelected3 = allSelected2.TrimEnd('&');
4

1 回答 1

0

如果我理解得很好,您尝试添加空格,然后将这些空格替换为&.

直接这样做会更容易。

List<object> list = checkedListBox1.CheckedItems.OfType<object>().ToList();
List<object> list2 = checkedListBox2.CheckedItems.OfType<object>().ToList();
List<object> list3 = checkedListBox3.CheckedItems.OfType<object>().ToList();
List<object> list4 = checkedListBox4.CheckedItems.OfType<object>().ToList();
List<object> list5 = checkedListBox5.CheckedItems.OfType<object>().ToList();

var allObjects = list.Concat(list2).Concat(list3).Concat(list4).Concat(list5);
var res = string.Join("&", allObjects);
于 2016-10-04T07:27:56.597 回答