DDX_Control

今回は、リストボックスの操作を行う。

DDX_Control | Microsoft Docs

これまではコントロールの状態とプリミティブ型変数の値やCStringなどを紐づけていたが、今回はコントロールの状態とそのコントロールのクラスオブジェクトを紐づけることで、状態を取得したり、操作したりする。

リストボックス配置
リストボックス配置

リストボックスを配置。

変数の追加
変数の追加

変数を追加。

カテゴリControl
カテゴリControl

前回まではカテゴリはValueだったが、今回はControl。
変数の種類はCListBoxにする。
これで、

m_xcListBox1が追加される。

DDX_ControlDlg.cppで、

ここでDDX_Controlで、IDC_LIST1とm_xcListBox1が紐付いてる。
また、

OnInitDialogで、m_xcListBox1.AddStringで、"Item1"、"Item2"、"Item3"を追加する。
で、

Button1が押された時のハンドラOnBnClickedButton1で、m_xcListBox1.AddStringで、"Item4"、"Item5"をさらに追加する。

起動時
起動時

"Item1"、"Item2"、"Item3"が追加されている。
Button1を押すと、

Button1でアイテム追加
Button1でアイテム追加

"Item4"、"Item5"が追加される。

Sample/mfc/DDX_Control/DDX_Control/src/DDX_Control at master · bg1bgst333/Sample · GitHub