c# - How to get the maximum/minimum value from a SortedDictionary? -
c# - How to get the maximum/minimum value from a SortedDictionary? -
i have built sorteddictionary<int, flowlayoutpanel> panels prescribed. looping on dictionary
foreach (var key in panels.keys.tolist()) { flowlayoutpanel tallestpanel = panels[key]; } to entry maximum key value. trying write loop continually applies operation until count of dictionary 0. within loop need maximum , minimum value dictionary on each iteration. have read on sorteddictionary msdn entry , looks need utilize linq accomplish this. true? how that? (i've never touched linq)
and bonus question can't find reply to, sorteddictionaries sort largest smallest value i.e. if int in <int, flowlayoutpanel> represented flowlayoutpanels.height, loop above continually give me tallest panel?
since keys sorted in panels.keys, minimum , maximum keys first , lastly items in panels.keys. don't need linq this:
var keys = panels.keys.tolist(); // manually-determined indexes var min = panels[keys[0]]; var max = panels[keys[keys.count - 1]]; although arguably, it's clearer if utilize it:
var keys = panels.keys.tolist(); // or linq var min = panels[keys.first()]; var max = panels[keys.last()]; if want these values within loop that's looping through panel.keys.tolist() , removing each item dictionary goes (which think you're describing), minimum current, , maximum last.
var keys = panels.keys.tolist(); var max = panels[keys.last()]; foreach (var key in keys) { var min = panels[key]; // stuff panels.remove(min); } c# linq dictionary
Comments
Post a Comment