protected void GetItemData(int index, out ItemData result) { if (!Data.TryGetValue(Items[index], out result)) result = new ItemData(); }