2

ElementNameを介してバインドするGridColumn.CellTemplate内にHyperlink.Commandがあります。RelativeSourceを使用してバインディングを実行したいのですが、その方法がわかりませんでした。この点での助けは大歓迎です。ありがとう....

<dxg:GridControl
    DataContext="{StaticResource viewModel}"
    Name="grid"
    ItemsSource="{Binding Details}"
    Grid.Row="1">
    <dxg:GridControl.View>
        <dxg:TableView
            ShowGroupPanel="False" />
    </dxg:GridControl.View>
    <dxg:GridControl.Columns>
        <dxg:GridColumn
            Header="Even or Odd"
            Width="200"
            FieldName="EvenOrOdd">
            <dxg:GridColumn.CellTemplate>
                <DataTemplate>
                    <TextBlock
                        Padding="4,0">
                    <Hyperlink
                            Command="{Binding DataContext.ToggleCommand, ElementName=grid}"
                            CommandParameter="{Binding RowData.Row}">
                        <TextBlock
                                Text="{Binding Value}" />
                    </Hyperlink>
                </TextBlock>
                </DataTemplate>
            </dxg:GridColumn.CellTemplate>
        </dxg:GridColumn>
        <dxg:GridColumn
            FieldName="Number"
            Width="200" />
    </dxg:GridControl.Columns>
</dxg:GridControl>
4

1 に答える 1

2

AncestorTypeを指定する必要があります。

Command="{Binding DataContext.ToggleCommand,
                  RelativeSource={RelativeSource AncestorType=dxg:GridControl}}"
于 2012-05-06T18:20:08.293 に答える