Ich habe eine Listview (die an eine ObservableCollection gebunden ist), alle Elemente aktivieren/deaktivieren Berechnung basierend auf einem IValueConverter.Xamarin: Wie IValueConverter bei einem Benachrichtigungsaufruf aufgerufen wird
Unten ist der Code für 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;
}
}
Jetzt habe ich bekam eine Benachrichtigung (von Message) und auf dem Rückruf Zustand eines des Elements geändert hat. Der Text und die Werte des Elements können geändert werden (z. B. Label, Bild mit INotifyPropertyChanged). Aber wie rufe ich den entsprechenden IValueConverter auf und aktualisiere die ObservableCollection?
Danke.
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"
/>
Wie verwenden Sie den Konverter? Bitte geben Sie den Code an, an den Sie den Zustand "IsEnabled" der Elemente binden. – Emad
@Emad Ich habe den Code aktualisiert .. – Xander