单击“下一步”按钮后,我需要在文本框中逐行显示第 4 列的项目。当用户点击下一步时,下一行应该显示到最后一行。
下面是我目前的代码,它只在单击“下一步”按钮时显示最后一行。我似乎无法正确循环。
public partial class RecordingView : Form
{
public RecordingView()
{
InitializeComponent();
}
public void UpdateListView(ListView listView1)
{
foreach (ListViewItem item in listView1.Items)
{
this.listView1.Items.Add((ListViewItem)item.Clone());
}
}
private void RecordingView_Load(object sender, EventArgs e)
{
//Add column header
listView1.Columns.Add("#", 60);
listView1.Columns.Add("Start time", 100);
listView1.Columns.Add("End time", 100);
listView1.Columns.Add("Duration", 100);
listView1.Columns.Add("Text", 350);
}
private void btnNext_Click(object sender, EventArgs e)
{
for (int i = 0; i < listView1.Items.Count; i++)
{
string line = listView1.Items[i].SubItems[4].Text; //picks list item
rtbCurrentLine.Text = line;
}
}
}
下面是我的用户界面
请帮我找出我哪里做错了。
最佳答案
我建议这样做,声明一个全局变量,它将获取下一次或上一次点击的索引:
int intIndex = -1;
然后在您的 btnNext 单击事件处理程序上,每次单击递增它:
private void btnNext_Click(object sender, EventArgs e)
{
if (intIndex <= listView1.Items.Count)
{
intIndex++;
string line = listView1.Items[intIndex].SubItems[4].Text;
rtbCurrentLine.Text = line;
}
}
关于c# 遍历 ListView 项并通过单击按钮一次在文本框中显示一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43579382/