我有listBox1中的16个项目和一个按钮“button1”,我需要能够在按下按钮时将所选项目从listBox1移动到listBox2。目前我的代码是
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;
using System.Xml;
using System.IO;
namespace courseworkmodule
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
String workingDir = Directory.GetCurrentDirectory();
XmlTextReader textReader = new XmlTextReader(workingDir + @"\modules.xml");
Console.WriteLine("BaseURI:" + textReader.BaseURI);
textReader.Read();
while (textReader.Read())
{
textReader.MoveToElement();
if (textReader.Name == "Name")
{
textReader.Read();
XmlNodeType nType = textReader.NodeType;
if (nType == XmlNodeType.Text)
{
listBoxAllModules.Items.Add(textReader.Value);
}
}
}
Console.ReadLine();
textReader.Close();
}
public void button1_Click(object sender, EventArgs e)
{
listBoxStudentModules.Items.Add(listBoxAllModules.SelectedItem);
}
private void Form1_Load_1(object sender, EventArgs e)
{
}
private void listBoxAllModules_SelectedIndexChanged(object sender, EventArgs e)
{
}
}
}
其中listBoxAllModule是listBox1,listBoxStudentModule是listBox2 提前感谢您的帮助
答案 0 :(得分:1)
你可以明确地看到发生了什么:
string value = listBoxAllModules.SelectedItem.Value;
string text = listBoxAllModules.SelectedItem.Text;
ListItem item = new ListItem ();
item.Text = text;
item.Value = value;
listBoxStudentModules.Items.Add(item);
答案 1 :(得分:1)
listBoxAllModules.Items
是ListBox.ObjectCollection
。您正尝试将其用作方法:
listBoxAllModules。项目( listBoxAllModules.SelectedItem )
这不起作用。您错过了Add
电话。应该是.Items.Add()
。您应该只需添加SelectedItem
作为TechnologRich显示:
listBoxStudentModules.Items.Add(listBoxAllModules.SelectedItem);