【发布时间】:2015-07-17 19:49:17
【问题描述】:
我在 WPF 中有可编辑的组合框,我想从 C# 设置焦点,
我正在使用 Combobox.Focus(),但它只显示选择,但我想要用户可以开始输入的编辑选项。
更新:解决了问题
我最终将“加载”事件添加到组合框并编写了以下代码以获取焦点,并且效果很好
private void LocationComboBox_Loaded(object sender, RoutedEventArgs e)
{
ComboBox cmBox = (System.Windows.Controls.ComboBox)sender;
var textBox = (cmBox.Template.FindName("PART_EditableTextBox",
cmBox) as TextBox);
if (textBox != null)
{
textBox.Focus();
textBox.SelectionStart = textBox.Text.Length;
}
}
【问题讨论】:
-
如果我在其他地方编写相同的代码,为什么它不起作用? (比如说,在按钮的点击处理程序中?)
标签: c# wpf wpf-controls