WPF / CaliburnMicro Привязать одно свойство к двум элементам управления формой - PullRequest
1 голос
/ 09 марта 2019

У меня есть один PersonModel объект, который имеет два свойства, FirstName и LastName.Я создал CurrentPerson свойство типа PersonModel в моей ViewModel.При связывании с элементами управления, то, что связано с x:Name, является единственным, которое отображается во время выполнения

TextBlock Отображает имя_Name

<TextBlock x:Name="CurrentPerson_FirstName" Grid.Column="0"  Grid.Row="0"></TextBlock>
<TextBox Text="{Binding Path=CurrentPerson_FirstName}" Grid.Column="0" Grid.Row="1"/>

TextBoxОтображает FirstName

 <TextBlock Text="{Binding Path=CurrentPerson_FirstName}" Grid.Column="0"  Grid.Row="0" ></TextBlock>
 <TextBox Name="CurrentPerson_FirstName" Grid.Column="0" Grid.Row="1" />

Как можно, чтобы TextBlock и TextBox отображали одни и те же данные, и если TextBox введен, TextBlock и CurrentPerson будут обновлены?

1 Ответ

2 голосов
/ 09 марта 2019

Если вы не используете x:Name, вам следует придерживаться обычного шаблона именования с использованием «.». В вашем TextBlock вам необходимо заменить «CurrentPerson_FirstName» на «CurrentPerson.FirstName».

Например,

<TextBlock Text="{Binding Path=CurrentPerson.FirstName}" Grid.Column="0"  Grid.Row="0" ></TextBlock>

Это должно помочь вам связать оба элемента управления с одним и тем же свойством.

...