C# 在一个messagebox中列出所有combobox项
我试图在一个messagebox中列出所有combobox项。但我得到的只是每一项都在它自己的消息框中出现。我知道messagebox需要在循环之外,但当我这样做时,它会说变量未赋值。任何帮助都会很好 私有void DisplayYachtypesToolStripMenuItem\u单击(对象发送者,事件参数e) {C# 在一个messagebox中列出所有combobox项,c#,for-loop,combobox,C#,For Loop,Combobox,我试图在一个messagebox中列出所有combobox项。但我得到的只是每一项都在它自己的消息框中出现。我知道messagebox需要在循环之外,但当我这样做时,它会说变量未赋值。任何帮助都会很好 私有void DisplayYachtypesToolStripMenuItem\u单击(对象发送者,事件参数e) { 字符串类型字符串; 对于(int indexInteger=0;indexInteger
字符串类型字符串;
对于(int indexInteger=0;indexInteger
试试这个
string yachtTypesString="";
for (int indexInteger = 0; indexInteger < typeComboBox.Items.Count; indexInteger++)
{
yachtTypesString=yachtTypesString + typeComboBox.Items[indexInteger].ToString();
}
MessageBox.Show(yachtTypesString);
字符串类型字符串=”;
对于(int indexInteger=0;indexInteger
像这样做
StringBuilder yachtTypesString = new StringBuilder();
for (int indexInteger = 0; indexInteger < typeComboBox.Items.Count; indexInteger++)
{
yachtTypesString.AppendLine(typeComboBox.Items[indexInteger].ToString());
}
MessageBox.Show(yachtTypesString.ToString());
StringBuilder-typesstring=new-StringBuilder();
对于(int indexInteger=0;indexInteger
注意:不要使用字符串连接字符串,请使用StringBuilder对象,因为在字符串中连接会创建新实例。您可以尝试使用Linq:
MessageBox.Show(String.Join(Environment.NewLine,typeComboBox.Items.Cast());
并让它为您完成所有工作在一个messagebox中列出所有combobox项 请使用下面的代码获得Combobox所有文本 私有void Form1\u加载(对象发送方、事件参数e) { DataTable dtcheck=新DataTable(); dtcheck.Columns.Add(“ID”); dtcheck.Columns.Add(“名称”);
对于(int i=0;我认为这样做会浪费大量字符串实例,请使用字符串生成器进行类似的处理。谢谢大家,这在这里起到了作用。我只需添加一个Environment.NewLine,以便它们都显示在新行上。问题是您需要将string YachtypesString;赋值为空字符串YachtypesStringring=“”;它将起作用
消息框底部将有一个空行,因为最后一个游艇类型字符串。AppendLine
添加了carrige return
StringBuilder yachtTypesString = new StringBuilder();
for (int indexInteger = 0; indexInteger < typeComboBox.Items.Count; indexInteger++)
{
yachtTypesString.AppendLine(typeComboBox.Items[indexInteger].ToString());
}
MessageBox.Show(yachtTypesString.ToString());
MessageBox.Show(String.Join(Environment.NewLine, typeComboBox.Items.Cast<String>()));
comboBox1.ValueMember = "ID";
comboBox1.DisplayMember = "Name";
comboBox1.DataSource = dtcheck;
}
}
private void button1_Click(object sender, EventArgs e)
{
string MessageText = string.Empty;
foreach(object item in comboBox1.Items)
{
DataRowView row = item as DataRowView;
MessageText += row["Name"].ToString() + "\n";
}
MessageBox.Show(MessageText, "ListItems", MessageBoxButtons.OK,MessageBoxIcon.Information);
}