久々のプログラミングネタ。
というか、1時間以上ド嵌りしたので、個人用メモ書き。
C# WPF のDataGridにアイテムをバインドするとき、バインドしたアイテムのプロパティが自動的にヘッダーについてくれるはずなのに、なぜかつかない。
なんでかっていうと・・・。
public class Nanika
{
public string Namae; // これはDataGridからみるとプロパティにならない
}
上の例だと、Namaeはプロパティ扱いされないので、ヘッダーに表示されない。
public class Nanika
{
public string Namae // getter, setter が付いて初めてプロパティ扱いされる
{
get;
set;
}
}
上の例だと、Namaeはプロパティ扱いされ、ヘッダーに"Namae"が表示される。
知らなかった。こんなつまらな・・・
というか、この書き方なら
public string Namae;
も
public string Namae
{
get;
set;
}
も、同じじゃないんかい!
やっぱり、後者は前者の省略形じゃなくて、あくまでstring型のpublicな変数で、後者はstring型のpublicなプロパティということを明示するということでしょうか?
とりあえず、ド嵌りしたのでメモとして走り書きでした。
以上。