我正在尝试转换一些单位.转换函数如何使用以下内容.得到以下XAML.标记在我的ViewModel中设置为唯一对象.
<TextBox Grid.Row="2" Grid.Column="0" Margin="5" HorizontalAlignment="Right" Tag ="{Binding MyObject1}" Style ="{StaticResource TextBoxStyle}"/>
<TextBox Grid.Row="2" Grid.Column="1" Margin="5" HorizontalAlignment="Right" Tag ="{Binding MyObject2}" Style ="{StaticResource TextBoxStyle}"/>
Run Code Online (Sandbox Code Playgroud)
这种风格......
<Style x:Key="TextBoxStyle" TargetType="{x:Type TextBox}">
<Setter Property="Text">
<Setter.Value>
<MultiBinding Converter="{StaticResource EditUnitsConverterEx}">
<Binding RelativeSource="{RelativeSource Self}" Path="Tag"/>
<Binding Path="IsMetric"/>
</MultiBinding>
</Setter.Value>
</Setter>
</Style>
Run Code Online (Sandbox Code Playgroud)
用这个转换器......
class EditUnitsConverter : IMultiValueConverter
{
MyObject item; //
bool IsMetric; // bool telling me what units the system is in
public object Convert(object[] values,
Type targetType,
object parameter,
System.Globalization.CultureInfo culture)
{
string sResult = ""; …Run Code Online (Sandbox Code Playgroud)