C# 添加、编辑、删除列表中的项目<;字符串>;
我有一个字符串列表,C# 添加、编辑、删除列表中的项目<;字符串>;,c#,list,listview,C#,List,Listview,我有一个字符串列表,list 我希望能够打开一个表单,显示此列表的内容,并允许用户在运行时添加、编辑和删除列表中的项目 我一直在看ListView,但它没有为我点击。我不确定这是因为它不是正确的解决方案,还是我不明白 对于我想做的事情,什么是正确的解决方案 Chuck您可以为您的目标使用列表视图和上下文菜单: 请尝试以下代码: List<string> listofstring = new List<string>() {"A","B","C" }; pr
list
我希望能够打开一个表单,显示此列表的内容,并允许用户在运行时添加、编辑和删除列表中的项目
我一直在看ListView,但它没有为我点击。我不确定这是因为它不是正确的解决方案,还是我不明白
对于我想做的事情,什么是正确的解决方案
Chuck您可以为您的目标使用
列表视图
和上下文菜单
:
请尝试以下代码:
List<string> listofstring = new List<string>() {"A","B","C" };
private void Form1_Load(object sender, EventArgs e)
{
FillLstView();
}
private void Additem_Click(object sender, EventArgs e)
{
listofstring.Add("New Item");
FillLstView();
}
private void RemoveItem_Click(object sender, EventArgs e)
{
listofstring.RemoveAt(lstview.FocusedItem.Index);
EditItem.Enabled = false;
RemoveItem.Enabled = false;
FillLstView();
}
private void lstview_SelectedIndexChanged(object sender, EventArgs e)
{
RemoveItem.Enabled = true;
EditItem.Enabled = true;
}
private void EditItem_Click(object sender, EventArgs e)
{
string input = Microsoft.VisualBasic.Interaction.InputBox("Enter Edit", "Title", "Edited", 0, 0);
if (input != "")
{
listofstring[lstview.FocusedItem.Index] = input;
EditItem.Enabled = false;
RemoveItem.Enabled = false;
FillLstView();
}
}
private void FillLstView()
{
lstview.Clear();
foreach (var item in listofstring)
{
lstview.Items.Add(item);
}
}
List listofstring=newlist(){“A”、“B”、“C”};
私有void Form1\u加载(对象发送方、事件参数e)
{
FillLstView();
}
私有void Additem\u单击(对象发送方,事件参数e)
{
添加(“新项目”);
FillLstView();
}
私有void removietem\u单击(对象发送方,事件参数e)
{
RemoveAt(lstview.FocusedItem.Index);
EditItem.Enabled=false;
removietem.Enabled=false;
FillLstView();
}
私有void lstview\u SelectedIndexChanged(对象发送方,事件参数e)
{
removietem.Enabled=true;
EditItem.Enabled=true;
}
私有void EditItem_单击(对象发送者,事件参数e)
{
字符串输入=Microsoft.VisualBasic.Interaction.InputBox(“输入编辑”、“标题”、“已编辑”,0,0);
如果(输入!=“”)
{
listofstring[lstview.FocusedItem.Index]=输入;
EditItem.Enabled=false;
removietem.Enabled=false;
FillLstView();
}
}
私有void FillLstView()
{
lstview.Clear();
foreach(listofstring中的var项)
{
lstview.Items.Add(项目);
}
}
结果
你在什么语言或环境下工作?不知道为什么会发生。。第一行应该是我有一个字符串列表,列表。感谢编辑,jwismar。我仍在掌握这方面的诀窍。Listview或datagridview可能是您希望使用的控件,因为它们具有您所述的所有功能。您是否在问如何在WPF或旧版Windows窗体中执行此操作?