У меня есть ItemsControl, который выглядит примерно так:WPF: Изменение стилей в ItemsControl на основе обязательных значений
<ItemsControl ItemsSource="{Binding}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid>
<TextBlock Text="{Binding Name}" />
<Slider Value="{Binding Volume}" />
<Slider Value="{Binding Pan}" />
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
который связан что-то вроде этого:
ObservableCollection<UserSettings> connectedUserSettings = new ObservableCollection<UserSettings>();
DataContext = connectedUserSettings;
Где UserSettings
выглядит примерно так :
public class UserSettings
{
public string Name;
public int Volume;
public float Pan;
public bool Audible;
public bool UserIsSpeaking;
}
Я хочу изменить название TextBlock d быть «Известь», когда UserIsSpeaking
- true
. Я также хотел бы отключить элементы управления ползунком, когда Audible
- false
. Каков наилучший способ сделать это? Есть ли простой способ сделать это, используя стили или что-то в XAML?
Благодаря Нитин! И спасибо за советы по поводу INotifyPropertyChanged - я знал, что это будет моей следующей проблемой для решения, так что спасибо за то, что вы сохранили мне время на исследования! (Также, derp о привязке IsEnabled.;) Рад, что было просто.) –