If you need to display this information to some users then it would be best to cast and set a DataSource property of a useful control. In the example i used a data grid view since this is usually right for displaying table data.
Example for displaying:
class Person {
public string FirstName { get; set; }
public string LastName { get; set; }
public int Age { get; set; }
public bool Current { get; set; }
}
HashTable table = new HashTable();
table["4874"] = new Person() {
FirstName = "Berny",
LastName = "Sanders",
Age = 65,
Current = true
};
table["6451"] = new Person() {
FirstName = "Michelle",
LastName = "Obama",
Age = 50,
Current = false
};
dataGridView1.DataSource = table.Cast<DictionaryEntry>().Select(x => new {
Column1_FirstName = ((Person)x.Value).FirstName,
Column2_LastName = ((Person)x.Value).LastName,
Column3_Age = ((Person)x.Value).Age,
Column4_Current = ((Person)x.Value).Current
}).Reverse().ToList();
OUTPUT::
FirstName | LastName | Age | Current
Berny | Sanders | 65 | True
Michelle | Obama | 50 | False
Note the use of Reverse(). Calling ToList() on a cast of the Hashtable will read from bottom up, so to keep the order (though the order is not guaranteed), call reverse().