【.NET】非表示のコントロールからBindした値を取得できない
デザイナでVisible = FalseのコントロールにDataBindingsでDataSetの値をバインドして、後でこの値を使おうと思ったけど値が取得できない。
非表示に設定したコントロールには、バインドしてくれないみたい。
解決策はデザイナではVisible = Trueにしておいて、onLoad時にVisible = Falseにすると大丈夫。
コントロールを隠して利用する方法はAccessではよくやる手法だけど、マシンのリソースを消費するので、.NETの開発ではなるべくコントロールを隠して配置せず、メンバ変数を使うとかDataSetのCurrentを見るとかの方がいいかも。
この件、僕も悩んだことがあります。
返信削除DataGridViewのDataKeyNamesを設定(複数可)して、各行のINDEXを元にDataKeyオブジェクトを取得して処理するって手もありますよ。
http://www.weblio.jp/content/DataKey
コメントありがとうございます。
返信削除もっとスマートに実現できる方法はないものかと悩んでました。
教えていただいた方法も別の機会に試してみます。