20 EKİM 2010, ÇARŞAMBA
nasıl ConverterParameter olarak bir tamsayı geçmek için?
Bir tamsayı özelliği bağlamak çalışıyorum:
<RadioButton Content="None"
IsChecked="{Binding MyProperty,
Converter={StaticResource IntToBoolConverter},
ConverterParameter=0}" />
ve benim dönüştürücü
[ValueConversion(typeof(int), typeof(bool))]
public class IntToBoolConverter : IValueConverter
{
public object Convert(object value, Type t, object parameter, CultureInfo culture)
{
return value.Equals(parameter);
}
public object ConvertBack(object value, Type t, object parameter, CultureInfo culture)
{
return value.Equals(false) ? DependencyProperty.UnsetValue : parameter;
}
}
sorun benim dönüştürücü parametre çağrıldığında dize olmasıdır. bu bir tam sayı olması gerekiyor. dize ayrıştırma yapabilirim elbette, ama bunu yapmak zorunda mıyım?
herhangi bir yardım için teşekkürler konstantin
CEVAP
2 AĞUSTOS 2011, Salı
Buyur bakalım.
<RadioButton Content="None"
xmlns:sys="clr-namespace:System;assembly=mscorlib">
<RadioButton.IsChecked>
<Binding Path="MyProperty"
Converter="{StaticResource IntToBoolConverter}">
<Binding.ConverterParameter>
<sys:Int32>0</sys:Int32>
</Binding.ConverterParameter>
</Binding>
</RadioButton.IsChecked>
</RadioButton>
Hile temel sistem türleri için Ad eklemek ve sonra da en azından ConverterParameter element olarak bağlayıcı yazmaktır.
Bunu Paylaş:
Bir ay adı (string) C karşılaştırması ...
Nasıl bir dizin özyinelemeli olarak tü...
Nasıl dikey olarak div içine bir resim...
Nasıl Düzenli İfade, JavaScript için b...
Nasıl bir dize olarak adını aldığımda ...