[英]c# copy selected listbox items into a string
我在將列表框中的選定值轉換為字符串時遇到一些問題。
列表框包含多個值,我們稱它們為AZ。 基本上,我想將所選項目復制到字符串中。
var listarray = new System.Collections.ArrayList(listboxName.SelectedItems);
string myval = "";
foreach (var arr in listarray)
{
myval = dep.ToString();
Console.WriteLine(myval); // this shows all the selected values
}
string finalStr = "some text before the values" + myval;
Console.WriteLine(finalStr);
我希望字符串顯示“值A,B,C,D ...之前的一些文本”,但是,它輸出“值A之前的一些文本”
最后一個Console.WriteLine
僅顯示一個值,而不是所有選定值。 我嘗試在foreach
循環中添加finalStr
,但這會創建finalStr
多個實例,而不是僅一個具有多個數組值的字符串。
使用String.Join從items集合構建連接字符串:
string finalStr = "Some text before the values " +
String.Join(", ", listboxName.SelectedItems.Cast<YourItemType>());
您總是將myval設置為dep.ToString的當前值-您應該將其串聯(我認為您的意思是arr而不是dep):
myval += arr.ToString() + ", ";
處理逗號最簡單的方法是創建其他列表並使用String.Join:
var selected = new List<string>();
foreach (var arr in listboxName.SelectedItems)
{
selected.Add(arr.ToString());
}
string finalStr = "some text before the values" + String.Join(", ", selected);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.