列表框的数据模板中的数据绑定

本文关键字:数据绑定 数据 列表 | 更新日期: 2023-09-27 18:32:53

我在xaml中定义了一个列表框,如下所示:

<ListBox>
   <ListBox.ItemContainerStyle>
      <Style TargetType="ListBoxItem">
         <Setter Property="Template">
            <Setter.Value>
               <ControlTemplate>
                  <Grid>
                     <Ellipse Visibility="{Binding IsSelected, RelativeSource={RelativeSource TemplatedParent}, Converter={StaticResource BooleanToVisibilityConverter}}" />
                         <ContentPresenter/>
                  </Grid>
               </ControlTemplate>
             </Setter.Value>
          </Setter>
      </Style>
   </ListBox.ItemContainerStyle>
   <ListBox.ItemTemplate>
      <DataTemplate>
        <StackPanel>
          <TextBlock x:Name="tb_Text" Text="{Binding IsSelected}"> </TextBlock>
         </StackPanel>
      </DataTemplate>
   </ListBox.ItemTemplate>

我想将tb_Text的某些属性(例如文本属性)绑定到列表框的数据上下文的某些属性(在本例中为 IsSelected 属性)。有没有办法实现这一目标?

注意:属性来自模板化的父级,该父级在其模板中定义了此列表框。

列表框的数据模板中的数据绑定

使用 ElementName 并绑定到EllipseVisibility 属性就可以解决问题。