public bool TryGetValue(TRowKey rowKey, out TValue value) { //A matrix gives an error if you ask for a key it doesn't know. //A dictionary does not. if (!_matrix.ContainsRowAndColKeys(rowKey, _colKey)) { value = default(TValue); return(false); } return(_matrix.TryGetValue(rowKey, _colKey, out value)); }