我在工具条中嵌入了一个组合框 - 一个ToolStripCombobox实例。
项目列表是 的值列表enum。
我希望能够加载/保存选择(Selected[Index|Item|Text|...]属性之一,来自/到应用程序的Settings“机制”。
理想情况下,我希望能够从设计师那里做到这一点。
通常,将控件的属性挂钩到某个设置是(在设计器中)从控件的属性中完成的,(ApplicationSettings)但没有任何SelectedXXX属性显示在那里。
FWIW,在toostrip绑定组合框的特殊情况下,实际SelectedXXX属性实际上更深一些,在toolStripComboInstance.ComboBox.SelectedXXX.
到目前为止我所做的是在代码中配置绑定:
m_runTypeCombo //the toolstrip control
.ComboBox //the actual combobox
.DataBindings.Add(
new System.Windows.Forms.Binding(
"SelectedItem",
global::JavaPad.Properties.Settings.Default,
"RunType",
true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged
)
);
以上工作,但我希望更清洁(即基于设计师)。如果内置ToolStripCombobox不支持这一点,是否有一种(简单的)方法可以从中派生出我自己的类型,并以与应用程序设置基础结构(及其在设计器中的支持)SelectedXXX一起使用的方式公开属性?