0

我有一个网格,在第 1 行我有一个带有 2 个文本框的堆栈面板。文本框在获得焦点时突出显示(我使用自定义样式来执行此操作,但没有一个也会发生同样的情况)。

当我单击 MyButton 时,按钮事件触发并且焦点停留在文本框中,因为按钮上有 IsTabStop="False"。但是,如果我单击按钮旁边的网格空间,文本框上的焦点就会丢失。由于网格上没有 IsTabStop 选项,如何阻止这种情况发生在网格等控件上?我在其他控件上也有同样的问题。知道如何在触摸网格时阻止焦点丢失吗?

这是一个使用 WIN RT XAML 的 Windows 8 商店应用程序,专为在平板设备上使用而设计。

谢谢

<Grid Background="LightGray"
      x:Name="gridMainGrid">
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto" />
        <RowDefinition Height="*" />
        <RowDefinition Height="Auto" />
        <RowDefinition Height="Auto" />
    </Grid.RowDefinitions>

    <!-- Header -->
    <Border Grid.Row="0"
            Background="White"
            Margin="5">

    </Border>

    <!-- Details -->        
    <StackPanel Grid.Row="1">
        <TextBox x:Name="textbox1" Height="100" Margin="10" Style="{StaticResource MyStyle}"/>
        <TextBox x:Name="textbox2" Height="100" Margin="10" Style="{StaticResource MyStyle}"/>
    </StackPanel>

    <!-- Footer -->
    <Border Grid.Row="2"
            Background="white" 
            Margin="5">
        <Grid x:Name="gridButton"
              HorizontalAlignment="Stretch">
            <Grid.ColumnDefinitions>
                <ColumnDefinition />
                <ColumnDefinition />
                <ColumnDefinition />
                <ColumnDefinition />
            </Grid.ColumnDefinitions>
            <Button x:Name="MyButton" 
                    IsTabStop="False"
                    Grid.Column="2"
                    Margin="5"
                    HorizontalAlignment="Stretch"
                    MinHeight="80"
                <TextBlock TextWrapping="Wrap">My Button</TextBlock>
            </Button>
            <Button x:Name="buttonEquipment" Grid.Column="3"
                    Margin="5"
                    HorizontalAlignment="Stretch"
                    MinHeight="80"
                    Click="buttonEquipment_Click">
                <TextBlock TextWrapping="Wrap">Equipment</TextBlock>
            </Button>
        </Grid>
    </Border>
</Grid>
4

1 回答 1

0

生病解决这个问题。试一试,让我知道它是否有效。

使用此链接并实现鼠标向上并将焦点转移到测试框

鼠标手势

试一试并注意副作用。对鼠标指针向上执行类似 txtBoxaEx.focus() 的操作。

于 2013-09-08T18:21:20.990 回答