我可以在列表框中将多个选定项目显示在按钮单击的文本框中,但如何在消息框中显示相同的内容?我的意思是在消息框上显示第一项不是问题,而是同时显示多个项目。建议请...
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace cities
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
textBox1.Clear();
foreach (object selectedItem in listBox1.SelectedItems)
{
textBox1.AppendText(selectedItem.ToString() + Environment.NewLine);
}
}
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
}
}
}
答案 0 :(得分:8)
您可以创建临时变量以在其中保存文本,然后创建一个消息框。
StringBuilder message = new StringBuilder();
foreach (object selectedItem in listBox1.SelectedItems)
{
message.AppendLine(selectedItem.ToString());
}
MessageBox.Show(message.ToString());
答案 1 :(得分:2)
您可以基于所有SelectedItems
创建单个字符串,然后在MessageBox中显示该字符串。像
string str = string.Join(",",
listBox1.SelectedItems.Cast<object>().Select(r => r.ToString()));
MessageBox.Show(str);
答案 2 :(得分:0)
在按钮中单击 -
textBox1.Clear();
string str = string.Empty;
foreach (object selectedItem in listBox1.SelectedItems)
{
str += selectedItem.ToString() + Environment.NewLine;
}
textBox1.Text = str;
MessageBox.Show(str);