Data binding 使用绑定的StringFormat设置文本框中数字输入的格式

Data binding 使用绑定的StringFormat设置文本框中数字输入的格式,data-binding,string-formatting,silverlight-5.0,Data Binding,String Formatting,Silverlight 5.0,所以,虽然标题听起来像是很多其他类似的问题,比如类似标题的问题框中出现的问题,但我觉得这是一个独特的情况。我试图做到的是:我有一个对象,它有两个属性。第一个是十进制值,第二个是存储.Net格式类型p/g/n/etc的字符串属性 我最终想做的是这样的事情: <TextBox Text="{Binding Path=decimalproperty, Mode=TwoWay, StringFormat={Binding path=formatproperty}}" /> 有人做过这样的事

所以,虽然标题听起来像是很多其他类似的问题,比如类似标题的问题框中出现的问题,但我觉得这是一个独特的情况。我试图做到的是:我有一个对象,它有两个属性。第一个是十进制值,第二个是存储.Net格式类型p/g/n/etc的字符串属性

我最终想做的是这样的事情:

<TextBox Text="{Binding Path=decimalproperty, Mode=TwoWay, StringFormat={Binding path=formatproperty}}" />

有人做过这样的事吗?我曾想过尝试使用ValueConverter,但由于必须绑定到完整对象才能访问decimalproperty和formatproperty,因此convertback似乎不起作用。如果您有任何建议或指导,我们将不胜感激。

为什么不使用独特的数据类型?我认为,最好将对象转换为字符串

Stirng MyResult=(MyCoomonObject.ToString()) ;

最后,我在对象模型上创建了一个viewmodel,并在那里处理了格式设置,同时将UI更改为在Silverlight中使用DataGrid。然后,我构建了一个模板列,并构建了2-3个控件来适当地处理数据。不满意它的实现方式,但它实现了我希望为客户实现的目标