调用内部列表视图中的事件

本文关键字:事件 视图 内部 列表 调用 | 更新日期: 2023-09-27 18:21:39

当我在内部列表视图程序中选择一个项目时,我调用list_Click,然后调用UOnSelectionChanged

如何仅呼叫list_Click

<UserControl x:Class="D.O.L.Controls.ListView"
                 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
        <ListView ItemsSource="{Binding DataContext, RelativeSource={RelativeSource Self}}" SelectionChanged="UOnSelectionChanged">
            <ListView.ItemTemplate>
                <DataTemplate>
                    <Border>
                        <Grid Width="30" MinHeight="60">
                            <StackPanel Grid.Row="1" Orientation="Horizontal">
                                <ListView ItemsSource="{Binding Locs}" SelectionChanged="list_Click" >
                                    <ListView.ItemTemplate>
                                        <DataTemplate>
                                            <TextBlock Name="Loc2"
                                           Visibility="{Binding Path=Tot, Converter={StaticResource Unity}}">
                                                <TextBlock.Text>
                                                    <MultiBinding Converter="{StaticResource UnitToL}">
                                                        <Binding Path="Tot" />
                                                    </MultiBinding>
                                                </TextBlock.Text>
                                               </TextBlock>
                                        </DataTemplate>
                                    </ListView.ItemTemplate>
                                </ListView>
                            </StackPanel>
                        </Grid>
                    </Border>
                </DataTemplate>
            </ListView.ItemTemplate>
        </ListView>
    </UserControl>

调用内部列表视图中的事件

SelectionChanged是一个RoutedEvent。它会冒泡的。

在您的情况下,您需要阻止它路由。

// list_Click....
private void ..SelectionChanged(object sender, SelectionChangedEventArgs e)
{
     e.Handled = true;
}