###質問
インデクサを使った以下のコードでエラーが発生します。
普通の変数だとOKなのですが、インデクサだと上手くいきません。
インデクサの行列の大きさを決めてなかったり、get、setがまだよく理解できていなかったりと、
どことなく思い当たる節はたくさんあるのですが、調べてもそれらしい記述がないのでご教授のほどよろしくお願い致します。
※リストボックスの項目と関連付けられたPersonクラスに、月と日付ごとの身長体重をインデクサを作って代入していくプログラム(のつもり)です。
###該当のソースコード
C#
1//-----省略------ 2 3public class Body 4{ 5 public int height{ get; set; } 6 public int weight{ get; set; } 7} 8 9public class Person 10{ 11 public string Name { get; set;} 12 public Body[,] DayMonth{ get; set;} 13} 14 15public class List 16{ 17 public List() 18 { 19 List_Items = new ObservableCollection<Person> { }; 20 } 21 public ObservableCollection<Person> List_Items { get; set; } 22 public Person List_SelectedItem { get; set; } 23} 24 25//-----省略------ 26 27var vm = this.DataContext as MainWindowViewModel; 28vm.List.List_SelectedItem.Name = "Tanaka";//←OK 29vm.List.List_SelectedItem.DayMonth[20,8].height = 170;//←エラーになる 30
エラーのスタックトレースは取得できませんか? 提示された情報だけだと、エラーになりそうな箇所が多くて特定しづらいです…
回答2件
あなたの回答
tips
プレビュー