1

Мы используем проект MVVM Light Silverlight для проекта WCF Ria Service. После некоторых исследований мы решили использовать DevExpress DataGrid с RiaInstantFeedbackDataSource. Все работает отлично, пока мы не хотим привязать сетку сетки к свойству ModelView. Вот наш XAML,Как мы можем привязать выбранную строку (или любое свойство [например, столбец идентификаторов] из этой строки) к свойству из ViewModel?

<UserControl x:Class="OurProject.Silverlight.Views.Personnel.List" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
     xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
     xmlns:dxg="http://schemas.devexpress.com/winfx/2008/xaml/grid" 
     xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" mc:Ignorable="d" 
     DataContext="{Binding Personnel, Source={StaticResource Locator}}" 
     d:DesignWidth="640" d:DesignHeight="480"> 
<Grid> 
    <Grid.RowDefinitions> 
     <RowDefinition /> 
     <RowDefinition Height="30" /> 
    </Grid.RowDefinitions> 

    <dx:RiaInstantFeedbackDataSource x:Name="DataSource" QueryName="{Binding Path=QueryName}" KeyExpression="{Binding Path=KeyExpression}" 
            DomainContext="{Binding Path=Context}" /> 

    <dxg:GridControl Name="grid" ItemsSource="{Binding ElementName=DataSource, Path=Data}" Grid.Row="0" AutoPopulateColumns="True" > 
     <dxg:GridControl.View> 
      <dxg:TableView x:Name="view" FocusedRow="{Binding Selected}" /> 
     </dxg:GridControl.View> 
    </dxg:GridControl> 
    <Button Grid.Row="1" Height="30" VerticalAlignment="Bottom" Content="Edit" Command="{Binding Edit}" /> 
</Grid> 

Когда мы отладить этот код (контрольную точку после редактирования выполненной команды), мы поняли, что тип FocusedRow является объект []. Мы попробовали RowPropertyValueConverter, но мы не можем найти какой-либо документ о том, как его использовать. Как мы можем привязать выбранную строку (или любое свойство [например, столбец идентификатора] из этой строки) к свойству из ViewModel?

P.S: Мы проверили this link, это не работает для RiaInstantDataSource.

Заранее благодарен.

ответ

1

ОК, мы решили эту проблему с

AreSourceRowsThreadSafe = "True"

дополнение к нашему коду.

<dx:RiaInstantFeedbackDataSource x:Name="DataSource" QueryName="{Binding Path=QueryName}" KeyExpression="{Binding Path=KeyExpression}" AreSourceRowsThreadSafe="True" DomainContext="{Binding Path=Context}" /> 

Мы будем отслеживать последствия этого многопоточности и запишем здесь важные важные основания.

+0

Никаких ударов до сих пор ... –

 Смежные вопросы

  • Нет связанных вопросов^_^