在网格winrt中获取上一个项目

时间:2014-04-22 14:58:05

标签: c# xaml windows-runtime windows-store-apps winrt-xaml

<Grid x:Name="gridGeneralProperties" HorizontalAlignment="Left" Height="613" Margin="233,5,0,0" Grid.Row="1" VerticalAlignment="Top" Width="437">
    <TextBlock TextWrapping="Wrap" Text="General Properties" FontSize="16" Margin="162,10,18,573"/>
    <TextBlock TextWrapping="Wrap" Text="Name" Margin="10,69,298,521" FontSize="14.667"/>
    <TextBox TextWrapping="Wrap" Text="{Binding Document.DocumentName}" IsReadOnly="True" Margin="144,59,73,520"/>
    <AppBarButton x:Name="appBarButtonEditName" HorizontalAlignment="Left" Label="" Margin="349,39,-12,0" VerticalAlignment="Top" Icon="Edit" Height="75"/>
</Grid>

有没有办法访问网格中的上一个?在这种情况下,如果用户点击AppBarButton,我想让以前的TextBox可编辑。在单击按钮的所有实例中,上一个项目将是TextBox。

1 个答案:

答案 0 :(得分:1)

在你的情况下 - 你知道你的XAML中有哪一个 - 你可以简单地命名它来访问它。

一般的解决方案是获取Grid.Children集合中起始元素的索引,而前一个元素将位于索引-1处。

MVVM是可行的方式。我也不确定为什么你需要一个按钮才能使TextBox可编辑 - 只需保持可编辑状态并节省空间。