2010-03-13 22 views
5

¿Alguna buena alma tiene un ejemplo de implementación del "Patrón de comando" introducido por Prism en un evento de doble clic en un DataGrid de Silverlight 4.0?Implementando el evento de doble clic en Silverlight 4 Datagrid

He intentado lo siguiente:

<data:DataGrid x:Name="dgUserRoles" AutoGenerateColumns="False" Margin="0" Grid.Row="0" ItemsSource="{Binding Path=SelectedUser.UserRoles}" IsReadOnly="False"> 
    <data:DataGrid.Columns> 
     <data:DataGridTemplateColumn Header=""> 
      <data:DataGridTemplateColumn.CellTemplate> 
       <DataTemplate> 
        <Button Width="20" Height="20" Click="Button_Click" Command="{Binding EditRoleClickedCommand}" CommandParameter="{Binding SelectedRole}" /> 
       </DataTemplate> 
      </data:DataGridTemplateColumn.CellTemplate> 
     </data:DataGridTemplateColumn> 
     <data:DataGridTextColumn Header="Role Name" Binding="{Binding RoleName}" /> 
     <data:DataGridTextColumn Header="Role Code" Binding="{Binding UserroleCode}" IsReadOnly="True"/> 
     <data:DataGridCheckBoxColumn Header="UDFM Managed" Binding="{Binding RoleIsManaged}" IsReadOnly="True" /> 
     <data:DataGridCheckBoxColumn Header="UDFM Role Assigned" Binding="{Binding UserroleIsUdfmRoleAssignment}" IsReadOnly="True" /> 
     <data:DataGridTextColumn Header="Source User" Binding="{Binding SourceUser}" IsReadOnly="True" /> 
    </data:DataGrid.Columns> 
</data:DataGrid> 

Como se ve traté de conectar el mando allí y no está disparando el evento en mi vista del modelo.

Buscando una buena alternativa.

+0

No veo ningún código de doble clic aquí. – Gabe

+0

También me gustaría saber la respuesta a esto, ¿cuál es la mejor manera de implementar clics dobles? –

Respuesta

1

Primero, Button.Command no es para hacer doble clic. Funcionará con un solo clic también.

Tiene que cambiar de esa manera. ElementName = dgUserRoles, Path = DataContext.

Command="{Binding ElementName=dgUserRoles, Path=DataContext.EditRoleClickedCommand}" 
Cuestiones relacionadas