更改长列表选择器中控件的属性

本文关键字:控件 属性 选择器 列表 | 更新日期: 2023-09-27 18:37:11

在我的应用程序中,我正在尝试更改长名单选择器内枢轴项内的按钮的属性。我尝试使用" x:Name"来命名按钮,我可以在事件处理程序中进一步使用它,但是发生错误"当前上下文中不存在该名称"。我使用相同的方法来修改长名单选择器的属性,并且效果很好。

这是我的 XAML 代码:

<phone:PivotItem x:Name="settingPivotItem">
        <phone:LongListSelector x:Name="longList3" 
                                ItemsSource="{Binding extra.Items}" 
                                SelectionChanged="longList3_SelectionChanged">
            <phone:LongListSelector.ItemTemplate>
                <DataTemplate>
                    <Button x:Name="settingButton">
                        <Button.Template>
                            <ControlTemplate>
                                <StackPanel>
                                    <TextBlock Text="{Binding item}"/>
                                </StackPanel>
                            </ControlTemplate>
                        </Button.Template>
                    </Button>
                </DataTemplate>
            </phone:LongListSelector.ItemTemplate>
      </phone:LongListSelector>
</phone:PivotItem>

请帮忙

更改长列表选择器中控件的属性

按钮 您尝试在数据模板中访问它,因此在不同的上下文中。

您无法从模板外部通过它的 x:Name 访问它,因为该模板可能有多个项目(因此可能有多个具有该名称的按钮)。

如果你真的必须从代码中更改它的属性,你可以使用VisualTreeHelper,als Fred说。

其他选项对我们来说是数据绑定。