none
如何让非文本框控件获取光标焦点? RRS feed

  • 问题

  • 在页面中有grid textblack 等控件..

    如何想grid在按下鼠标点击的时候获取光标 触发GetFouce事件。

    我尝试继承Textbox 但我显示没有textbox的表现形态(没有输入框) 也无法实现。
    或者再MouseLeftButtonDown是 fouces() 也无法使控件获取输入光标。

    请求如何自定义Grid让其触发GetFoucs事件

    2009年9月20日 0:39

答案

  • 非常感谢你的答复。

    我已经找到解决办法了。

    在button 里面应用一个模板 template ={StaticResource buttonFouce}

    然后在buttonFouce 中只放一个TextBlock .就可以达到 看起来就和TextBlock一样。
     
    但可以有Button 的GotFouce 和 lostFouce事件触发。(其实就是Button的,只不过看起来不是Button)

    有人会问如何获取template中TextBlock 。。。方法GetTemplateChild("控件名")
    • 已标记为答案 worldman 2009年9月22日 14:44
    2009年9月22日 14:44

全部回复

  • 你好,
    请问你要的是这种效果吗?

     

     

    <Grid x:Name="LayoutRoot">

    <

     

    TextBox BorderThickness="0" IsReadOnly="True" Text="Hello World"></TextBox>

     

     

    </Grid>


    Please remember to mark the replies as answers if they help and unmark them if they provide no help. Welcome to the All-In-One Code Framework http://cfx.codeplex.com/! If you have any feedback, please tell us.
    2009年9月22日 3:17
    版主
  • 非常感谢你的答复。

    我已经找到解决办法了。

    在button 里面应用一个模板 template ={StaticResource buttonFouce}

    然后在buttonFouce 中只放一个TextBlock .就可以达到 看起来就和TextBlock一样。
     
    但可以有Button 的GotFouce 和 lostFouce事件触发。(其实就是Button的,只不过看起来不是Button)

    有人会问如何获取template中TextBlock 。。。方法GetTemplateChild("控件名")
    • 已标记为答案 worldman 2009年9月22日 14:44
    2009年9月22日 14:44