2

ボタンをクリックすると、リストボックスから選択した複数のアイテムをテキストボックスに表示できますが、メッセージボックスに同じものを表示するにはどうすればよいですか? メッセージボックスに最初のアイテムを表示することは問題ではありませんが、一度に複数のアイテムを表示することは問題です。提案してください...

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)
        {

        }
    }
}
4

3 に答える 3

8

一時変数を作成してテキストを保存し、メッセージボックスを作成できます。

StringBuilder message = new StringBuilder();
foreach (object selectedItem in listBox1.SelectedItems)
{
    message.AppendLine(selectedItem.ToString());
}
MessageBox.Show(message.ToString());
于 2013-02-26T08:45:16.840 に答える
2

すべてに基づいて単一の文字列を作成し、SelectedItemsそれを MessageBox に表示できます。お気に入り

string str = string.Join(",",
                        listBox1.SelectedItems.Cast<object>().Select(r => r.ToString()));
MessageBox.Show(str);
于 2013-02-26T08:47:20.930 に答える
0

あなたのボタンをクリックして -

        textBox1.Clear();
        string str = string.Empty;
        foreach (object selectedItem in listBox1.SelectedItems)
        {
            str += selectedItem.ToString() + Environment.NewLine;
        }

        textBox1.Text = str;
        MessageBox.Show(str);
于 2013-02-26T08:45:40.407 に答える