我尝试使用richtextbox构建自定义用户控件(winforms),并希望传递" Text"通过usercontrol进行数据绑定,以便当控件放置在表单上并且绑定源绑定到用户控件时,文本"数据绑定,它实际上将绑定到子richtextbox" Text"捆绑。下面的代码位用于设置文本,但在更改后不会获得文本。
用户控制:
[System.ComponentModel.DefaultBindingProperty("Text")]
public partial class UcEditableRTBox : UserControl
{
public UcEditableRTBox()
{
InitializeComponent();
InitControl();
}
[Bindable(true)]
public override string Text
{
get { return rtb.Text; }
set { rtb.Text = value; }
}
形式:
public partial class FrmTest : Form
{
public FrmTest()
{
InitializeComponent();
}
TestTable tt;
private void FrmTest_Load(object sender, EventArgs e)
{
tt = TestTable.FindAll().FirstOrDefault();
bindingSource.DataSource = tt;
}
private void btnSave_Click(object sender, EventArgs e)
{
bindingSource.EndEdit();
tt.Save();
}
}
非常感谢任何有关如何查看此资源或其他资源的提示。
由于
答案 0 :(得分:0)
标准修复方法是使用Text
以外的其他名称:
public string TextValue {
get { return rtb.Text; }
set { rtb.Text = value; }
}
有关其他解决方法的建议,请参阅Data Binding with a Custom UserControl’s Text Property。