1

我自己创建了一个继承自默认系统 TextBox 的新 TextBox 控件。如果我向我的设计器添加一个数据源,并且在 DataSource 视图中,我可以在可以拖动到设计器的控件列表中看到我的新文本控件。

我的问题是当我将控件拖到设计器上时,VS 会创建以下代码。

this.someValueTextEdit1.DataBindings.Add(new System.Windows.Forms.Binding("EditValue", this.myViewModelBindingSource, "SomeValue", true));

相反,当我将控件拖到设计器上时,我希望它使用一些自定义代码。

如果您想知道我为什么要这样做,那么我可以更改绑定,以便它使用 linq 和表达式树而不是字符串属性值。就像是

Bind(this.someValueTextEdit, c => c.EditValue, v => v.SomeValue);
4

1 回答 1

0

您应该创建自己的 CodeDomSerializer 类。

使用示例:MSDN 上的 CodeDomSerializer 类

于 2011-03-22T13:24:53.680 回答