public object this[int linha, int coluna] { get { if (!_dados.ContainsKey(linha)) { return(null); } if (!_dados[linha].ContainsKey(coluna)) { return(null); } return(_dados[linha][coluna]); } set { if (!_dados.ContainsKey(linha)) { if (!Linhas.Exists(x => x == linha)) { Linhas.Add(linha); } _dados.Add(linha, new Dictionary <int, object>()); } _dados[linha][coluna] = value; } }