网上 有一个大神问我这样的问题:在做UWP的项目,怎么能让焦点在点击在页面空白处时回到textbox中? 虽然我的小伙伴认为他这是一个 xy 问题,但是我还是回答他这个问题。

首先需要知道什么是空白处,例如有下面的代码

 <Grid><TextBox x:Name="XcjKfqnkor"></TextBox></Grid>

那么空白就是 Grid ,需要点击他的时候回到 TextBox ,下面的代码我没有跑,可能无法运行

需要让 Grid 可以获得点击,需要给他背景

 <Grid Background="#01FFFFFF"><TextBox x:Name="XcjKfqnkor"></TextBox></Grid>

然后给 Grid 一个名称

 <Grid x:Name="VkyZqfs" Background="#01FFFFFF"><TextBox x:Name="XcjKfqnkor"></TextBox></Grid>

在后天代码添加按下空白地方让 XcjKfqnkor 获得焦点

Grid.AddHandler(PointerPressedEvent,
                new PointerEventHandler(Grid_OnPointerPressed), true);

         private void Grid_OnPointerPressed(object sender, PointerRoutedEventArgs e)
        {
            XcjKfqnkor.Focus();
        }

参见:win10 uwp 获取按钮鼠标左键按下 - 林德熙

UWP开发大坑之—路由事件 - 快乐 就在你的心 的博客

如果是技术问题,建议到 Stackoverflow 提问,在csdn提问暂时比较少看到大神在看

欢迎加入Q群 53078485 讨论 uwp


本文会经常更新,请阅读原文: https://dotnet-campus.github.io//post/win10-uwp-%E8%AE%A9%E7%84%A6%E7%82%B9%E5%9C%A8%E7%82%B9%E5%87%BB%E5%9C%A8%E9%A1%B5%E9%9D%A2%E7%A9%BA%E7%99%BD%E5%A4%84%E6%97%B6%E5%9B%9E%E5%88%B0textbox%E4%B8%AD.html ,以避免陈旧错误知识的误导,同时有更好的阅读体验。

知识共享许可协议 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名 lindexi (包含链接: https://dotnet-campus.github.io/ ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请 与我联系