首页 新闻 搜索 专区 学院

WPF 设置鼠标焦点在TextBox中就那么难吗?

0
悬赏园豆:30 [已解决问题] 解决于 2012-06-12 09:46

求救

XAML

<StackPanel >
<Expander Name="expanders" Header="我要选择中你,然后直接在键盘输入字">
<WrapPanel Orientation="Vertical">
<Button Content="Button" Height="23" Name="button1" Width="75" Click="button1_Click" />
</WrapPanel>
</Expander>
</StackPanel>

 

Button事件后台创建Textbox并且设置设置 

SelectAll、Focus
        private void button1_Click(object sender, RoutedEventArgs e)
        {
            TextBox txtbox = new TextBox() { Width = 250, Height = 23 };
            txtbox.Text = expanders.Header.ToString();
            //txtbox.SelectAll();
            //txtbox.Focus();
            expanders.Header = txtbox;

        }
hidden518的主页 hidden518 | 初学一级 | 园豆:175
提问于:2012-06-07 17:52
< >
分享
最佳答案
0
 private void button1_Click(object sender, RoutedEventArgs e)
 {
     TextBox txtbox = new TextBox() { Width = 250, Height = 23 };
     txtbox.Text = expanders.Header.ToString();
     txtbox.Loaded += new RoutedEventHandler(txtbox_Loaded);
     expanders.Header = txtbox;
 }

 void txtbox_Loaded(object sender, RoutedEventArgs e)
 {
     TextBox txtbox = (TextBox)sender;

     txtbox.Focus();
 }
收获园豆:30
Gavin2010 | 菜鸟二级 |园豆:240 | 2012-06-11 17:22

正解

hidden518 | 园豆:175 (初学一级) | 2012-06-11 18:09
其他回答(3)
0
txtbox.Focus();写在最后就可以了。
悟行 | 园豆:12371 (专家六级) | 2012-06-07 20:38

每个位置都试过了。没效果

支持(0) 反对(0) hidden518 | 园豆:175 (初学一级) | 2012-06-07 22:10

@hidden518: 

Control 基类提供了 Focus 方法。 以编程方式调用此方法尝试将焦点设置为在其上调用该方法的控件。 Focus 具有布尔返回值,该值通知您焦点的尝试是否成功。 设置焦点失败的可能原因包括之前本主题中 “控件和焦点” 中提到的每个点。 如果在具有焦点的控件上调用 Focus,则将不会引发任何事件,但是方法仍将返回 true 以便该方法调用不会被解释为将焦点强迫为预定目标的失败。

http://msdn.microsoft.com/zh-cn/library/cc903954(VS.95).aspx

支持(0) 反对(0) 悟行 | 园豆:12371 (专家六级) | 2012-06-08 11:25
0

你 這個 TextBox  本沒有放到窗體上哦。

無限遐想 | 园豆:3740 (老鸟四级) | 2012-06-08 17:55
0

设置button 的Focusable="False"试试

<StackPanel >
<Expander Name="expanders" Header="我要选择中你,然后直接在键盘输入字">
<WrapPanel Orientation="Vertical">
<Button Content="Button" Height="23" Name="button1" Width="75" Click="button1_Click"  Focusable="False"/>
</WrapPanel>
</Expander>
</StackPanel>

NO0 | 园豆:202 (菜鸟二级) | 2012-11-13 16:37
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册