Правильная привязка данных в WPF - PullRequest
1 голос
/ 27 июня 2010

Как создать такой пользовательский интерфейс:
1) ListBox с элементами.
2) Подробная информация о выбранном элементе.
3) Когда вы изменяете любой элемент в подробной информации, выбранный элемент в спискестановится жирным шрифтом ...
4) ... до тех пор, пока вы не нажмете кнопку "Сохранить" и все изменения не перейдут в базу данных.

Например, для привязки к списку, который я используюОбъект со свойством String Name, и я хочу увидеть изменения этого свойства после нажатия «Сохранить».

Основная проблема заключается в принудительном обновлении ListBox, когда я связываю UpdateCommand со свойством Command SaveButton.

1 Ответ

0 голосов
/ 27 июня 2010

Вы можете использовать DataTrigger.Добавьте свойство в модель представления элементов с именем Dirty.Установите это значение true при редактировании элемента.Когда значение Dirty равно true, устройство сбора данных установит жирный шрифт жирным шрифтом.

   <Window.Resources>                
        <Style TargetType="{x:Type TextBlock}" x:Key="AStyle">
            <Style.Triggers>
                <DataTrigger
                    Binding="{Binding Path=Dirty}"
                    Value="True">
                    <Setter Property="FontWeight" Value="Bold" />                    
                </DataTrigger>
            </Style.Triggers>
        </Style>

        <DataTemplate x:Key="ATemplate">
            <StackPanel>
                <TextBlock Text="{Binding Name}" Style="{StaticResource AStyle}" />
            </StackPanel>
        </DataTemplate>
    </Window.Resources>

А затем просто установите для ItemTemplate значение ATemplate

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...