私はListview(ObservableCollectionに結びついています)を持っています。すべての要素はIValueConverterに基づいて計算を有効/無効にします。以下はXamarin:通知呼び出しでIValueConverterを呼び出す方法
はIValueConverterのコードです...
public class StateCheckConverter: IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
var result = false;
if (value != null)
{
var element = value as Element;
if (element.Status != Status.Pending)
result = true;
}
return result;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
return value;
}
}
は、今私は(MessageCenterから)の通知を持っているし、コールバックに要素の1の状態が変更されました。要素(INotifyPropertyChangedを使ってラベル、画像など)のテキストと値を変更することができます。しかし、どのようにして対応するIValueConverterを呼び出し、ObservableCollectionを更新するのですか?
ありがとうございました。
UPDATE:
<ContentPage.Resources>
<ResourceDictionary>
<vm:StateCheckConverter x:Key="transmissionStateCheck" />
</ResourceDictionary>
</ContentPage.Resources>
<Label x:Name="lblLocked"
IsVisible="{Binding ., Converter={StaticResource transmissionStateCheck}, Mode=TwoWay}"
HorizontalTextAlignment="Center"
BackgroundColor="Gray"
Opacity="0.75"
Text="LOCKED"
TextColor="White"
FontSize="35"
/>
どのようにコンバータを使用しますか?項目の 'IsEnabled'状態をバインドするコードを投稿してください。 – Emad
@Emadコードを更新しました.. – Xander