如何传递从这个列表框的选定项目采取的变量?WPF

本文关键字:项目 变量 WPF 列表 何传递 | 更新日期: 2023-09-27 17:50:53

我有一个列表框,我需要一种方式来传递选定的项目到UserControl。我该怎么做呢?

<Grid >
  <ListBox Name="lbPersonaggi"  HorizontalContentAlignment="Stretch" SelectionMode="Single"><!--SelectionChanged="lbPersonaggi_SelectionChanged"-->
        <ListBox.ItemTemplate>
            <DataTemplate>
                <Grid Margin="0,2">
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="*" />
                        <ColumnDefinition Width="100" />
                    </Grid.ColumnDefinitions>
                    <TextBlock Name="TBPG" Text="{Binding Personaggio}" MouseUp="ClickPG" />
                </Grid>
            </DataTemplate>
        </ListBox.ItemTemplate>
</ListBox>


</Grid>

如何传递从这个列表框的选定项目采取的变量?WPF

如果您只是想将所选项设置为另一个UserControl的DataContext,您可以这样写

<UserControl DataContext="{Binding lbPersonaggi.SelectedItem}" />

您不需要在视图模型中使用属性来存储选中的项。

在ListBox Definition header中试试:

SelectedItem="{Binding Path=YourPropertyWhereYouWantToStoreTheValue, Mode=OneWayToSource}"

然后在第二个控件中重用此属性。