C# 重写OneNoter以禁用格式化OneNoter文本,但会中断数据绑定

C# 重写OneNoter以禁用格式化OneNoter文本,但会中断数据绑定,c#,data-binding,formatting,C#,Data Binding,Formatting,当您输入绑定的文本框格式时,该格式应消失,在离开时,该文本应再次格式化。当我尝试此代码时,数据绑定中断。在文章中添加一些相关上下文后,您应该问一个特定的问题。现在还不清楚你希望别人帮你做什么。考虑阅读网页。我想我的问题很清楚,如果不是,我可以再试一次。我有一个带有数据绑定的表单,现在一些文本框表示价格,所以这些文本框四舍五入(格式化)两位小数。现在,当我输入这些文本框时,我希望该格式被删除。示例24565被四舍五入为2.46,当我现在输入这个文本框时,它应该是24565(格式设置关闭)。我希望这

当您输入绑定的文本框格式时,该格式应消失,在离开时,该文本应再次格式化。当我尝试此代码时,数据绑定中断。

在文章中添加一些相关上下文后,您应该问一个特定的问题。现在还不清楚你希望别人帮你做什么。考虑阅读网页。我想我的问题很清楚,如果不是,我可以再试一次。我有一个带有数据绑定的表单,现在一些文本框表示价格,所以这些文本框四舍五入(格式化)两位小数。现在,当我输入这些文本框时,我希望该格式被删除。示例24565被四舍五入为2.46,当我现在输入这个文本框时,它应该是24565(格式设置关闭)。我希望这一次足够清楚。谢谢你考虑做与建议相反的事情。
public class CustomTextBox
{

    protected override void OnEnter(EventArgs e)
    {

        if (this.DataBindings.Count > 0)
        {
            this.cancelvalidating = true;
            this.DataBindings[0].FormattingEnabled = false;
            this.cancelvalidating = false;
        }

        OldText = this.Text;
        base.OnEnter(e);
    }

    protected override void OnLeave(EventArgs e)
    {
        if (this.DataBindings.Count > 0)
        {
            this.cancelvalidating = true;
            this.DataBindings[0].FormattingEnabled = true;
            this.cancelvalidating = false;
        }
        base.OnLeave(e);
    }


}