【发布时间】:2016-04-20 12:36:59
【问题描述】:
我创建了一个 Windows 窗体应用程序,在其中将信息添加到列表视图中,但是我想在下次打开程序时存储该信息。如何将列表视图信息存储到数组中,以及如何按升序(截止日期)对其进行排序。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsFormsApplication6
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
listView1.View = View.Details;
listView1.FullRowSelect = true;
listView1.Columns.Add("Due Date", 150);
listView1.Columns.Add("Module", 150);
listView1.Columns.Add("Title", 150);
}
private void add(string DueDate, String Module, String Title)
{
string[] row = { DueDate, Module, Title };
ListViewItem item = new ListViewItem(row);
listView1.Items.Add(item);
}
private void listView1_MouseClick(object sender, MouseEventArgs e)
{
String Duedate = listView1.SelectedItems[0].SubItems[0].Text;
String Module = listView1.SelectedItems[0].SubItems[1].Text;
String Title = listView1.SelectedItems[0].SubItems[2].Text;
textBox1.Text = Duedate;
textBox2.Text = Module;
textBox3.Text = Title;
}
private void btnAdd_Click(object sender, EventArgs e)
{
add(textBox1.Text, textBox2.Text, textBox3.Text);
textBox1.Text = "";
textBox2.Text = "";
textBox3.Text = "";
}
private void btnClear_Click(object sender, EventArgs e)
{
listView1.Items.Clear();
textBox1.Text = "";
textBox2.Text = "";
textBox3.Text = "";
}
private void update()
{
listView1.SelectedItems[0].SubItems[0].Text = textBox1.Text;
listView1.SelectedItems[0].SubItems[1].Text = textBox2.Text;
listView1.SelectedItems[0].SubItems[2].Text = textBox3.Text;
textBox1.Text = "";
textBox2.Text = "";
textBox3.Text = "";
}
private void btnUpdate_Click(object sender, EventArgs e)
{
update();
}
private void delete()
{
if(MessageBox.Show("Are you sure you want to Delete", "Delete", MessageBoxButtons.OKCancel,MessageBoxIcon.Warning)== DialogResult.OK)
{
listView1.Items.RemoveAt(listView1.SelectedIndices[0]);
textBox1.Text = "";
textBox2.Text = "";
textBox3.Text = "";
}
}
private void btnDelete_Click(object sender, EventArgs e)
{
delete();
}
}
}
谢谢
【问题讨论】:
-
嗨。因此,如果我了解您想在本地存储数据而不是数据库,对吗?
-
你能说出具体的问题吗?例如。 “我不知道该怎么做……”
-
@RicardoRacciore 是的,这就是我想要做的。
-
@Sinatr 我希望能够将列表视图数据存储在一个数组中,这样当我再次打开程序时,数据仍然存在。
标签: c# arrays winforms sorting