我需要计算/更改文本框与其可绑定源之间的输入形式。我试图实现这一点的方法是借助转换器。
转换器:
public class ParameterConverter : IValueConverter
{
public object Convert(object value, System.Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (value == null)
return string.Empty;
string originalParameValue = value.ToString();
string fixedParameterValue = string.Format("@_{0}", originalParameValue);
return fixedParameterValue;
}
public object ConvertBack(object value, System.Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
throw new System.NotImplementedException();
}
}
XAML:
<Window.Resources>
<converters:ParameterConverter x:Key="parameterConverter" />
</Window.Resources>
<Grid>
<TextBox Text="{Binding ParameterA, Converter={StaticResource parameterConverter}}"/>
</Grid>
问题是,转换器只工作一次。它的方法是正确的(我指的是转换器)还是有其他方法?
也许绑定模式不是双向的,您的属性fire属性是否发生了更改。
您的数据上下文是否实现INotifyPropertyChanged,并且在ParameterA更改时是否调用PropertyChanged?似乎没有人通知文本框需要更新其内容。