Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Retrieving item from List collection when each index have a set of items

Tags:

c#

asp.net

I am trying to create a form application with asp.net C# that display question and hint. I was going to put the two in a separate list collection but there could be a possibility that questions and hints can become disjointed so I decided to create a class where it takes ID, Q, and Hint and then put them in a list collection as a set.

Here is the code in QHint.cs file:

public QHint (int ID, string Q, string Hint)
{
      this.ID = ID;
      this.Q = Q;
      this.Hint = Hint;
}

public int ID { get; set; }
public string Q { get; set; }
public string Hint { get; set; }

Here is the code in the form1.cs file:

List<QHint> QHintList = new List<QHint>;
QHintList.add(new QHint(1, "quesiton1 blah blah?", "hint1 blah blah"));
QHintList.add(new QHint(2, "quesiton2 blah blah?", "hint2 blah blah"));
.... and so on....

My question is how can I specify what item to retrieve from the list such as just the hint1? I tried to retrieve a set (ID, Q, and Hint) with QHintList[0] but was not even able to do that. However, ultimately I want to be able to display question1 and then when the user hit a hint button I can display the corresponding hint1. Also, is using class and list the best way logically to accomplish what I want?

This might be some basic knowledge and I tried looking it up like how to use a list, how to retrieve data from list, and so on but had no luck.

Any help will be much appreciated.

like image 567
Anthony Don Avatar asked Dec 13 '25 04:12

Anthony Don


1 Answers

If you can keep track of which hints are at which positions then you can just use

var qHint = QHintList[i];

If you have no way of keeping track then you can use the find method on the List which takes a predicate. I think this will work (depending on what information you have available at the time)

var qHint = QHintList.Find(q => q.Id == YourId);
like image 114
uriDium Avatar answered Dec 15 '25 18:12

uriDium



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!