WPF类型转换的方式
转换的类的编写:
public class BoolToVisibilityConverter2 : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
bool flag = true;
if (value == null)
return Visibility.Collapsed;
if (string.IsNullOrWhiteSpace(value.ToString().Trim()))
{
return Visibility.Collapsed;
}
if (value != null)
flag = bool.Parse(value.ToString().ToLower());
return flag ? Visibility.Visible : Visibility.Collapsed;
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (value == null)
return true;
return ((Visibility)value == Visibility.Visible);
}
}
WPF界面的引用:
<Grid.Resources>
<grgcontrol:BoolToVisibilityConverter2 x:Key=“VisibilityConverter2” />
</Grid.Resources>
<StackPanel Orientation="Vertical" HorizontalAlignment="Left" Width="800" Height="200" Margin="775 125 0 0" Visibility="{Binding ElementName=mycomboxTtem0,Path=IsSelected,Converter={StaticResource VisibilityConverter2}}">
<TextBlock Style="{DynamicResource Text40RGB46Style}" HorizontalAlignment="Left" Text="{DynamicResource Finacing_bftqje}" />
<control:InputControl Margin="-50,-50,215,0" Width="200"
InputNotForeground="White"
Style="{StaticResource InputControlStyle6}"
TextValue="{Binding saveBuffer, Mode=TwoWay}"
IsInputFloat="True"
KeyBoardType="ModeAmount"
Height="60" Grid.ColumnSpan="3" RegularExpression="^[0-9]+(.[0-9]{2})?$|^[0-9]+(.[0-9]{1})?$"
RegularTips="{DynamicResource ConfirmPayMentAmount}" MaxDigit="6" FirstZeroFloat="True" Count="{Binding Count}"
PromptControl="{Binding ElementName=Prompt1}" InitErrorInfo="{DynamicResource ConfirmPayMentInfo}" />
<TextBlock Style="{DynamicResource Text40RGB46Style}" HorizontalAlignment="Left" Margin="365 -60 0 0" Text="{DynamicResource MeasureOfCash}" />
</StackPanel>