Button click prints next item in list to a textbox

Viewed 161

So I'm reading in a csv file called messages and I'm splitting the values into three lists:

'''

    public void LoadMessages()
    {
        var messageType = new List<string>();
        var messageSender = new List<string>();
        var messageContent = new List<string>();

        using (var rd = new StreamReader("messages.csv"))
        {
            while (!rd.EndOfStream)
            {
                var splits = rd.ReadLine().Split(',');
                messageType.Add(splits[0]);
                messageSender.Add(splits[1]);
                messageContent.Add(splits[2]);
            }
        }
    }

'''

I want to add a button that when it's clicked it will iterate to the next item in each list and print the value to the the below textboxes:

txtMessageType txtSender txtContent

'''

    private void btnNext_Click(object sender, RoutedEventArgs e)
    {
        // some code
    }

'''

Would anyone be able to assist me with how to do this?

Thanks

1 Answers
int index = 0;

private void btnNext_Click(object sender, RoutedEventArgs e)
{
    txtMessageType.Text = messageType[index];
    txtSender.Text = messageSender[index];
    txtContent.Text = messageContent[index];
    index++;
    if (index == messageType.Count)
        index = 0; // reset the index to the beginning once you reach the end
}

Related