0
我想以編程方式專注於AutoCompleteBox並設置其插入位置就像TextBox。我們可以使用Select(int,int)方法在TextBox上做到這一點,但AutoCompleteBox沒有這個方法。我們可以擴展AutoCompleteBox來實現這個嗎?我正在使用C#。謝謝!WPF工具包AutoCompleteBox以編程方式設置插入位置
我想以編程方式專注於AutoCompleteBox並設置其插入位置就像TextBox。我們可以使用Select(int,int)方法在TextBox上做到這一點,但AutoCompleteBox沒有這個方法。我們可以擴展AutoCompleteBox來實現這個嗎?我正在使用C#。謝謝!WPF工具包AutoCompleteBox以編程方式設置插入位置
您可以擴展AutoCompleteBox
類,或直接在代碼中直接獲取TextBox
並調用Select
方法。
在AutoCompleteBox
默認模板TextBox
被命名爲「文本」,這樣你就可以調用yourAutoCompleteBox.Template.FindName("Text", yourAutoCompleteBox)
得到TextBox
,或創建一個派生類是這樣的:
public class AutoCompleteBoxEx : AutoCompleteBox
{
private TextBox _textBox;
public override void OnApplyTemplate()
{
base.OnApplyTemplate();
if (Template == null) return;
_textBox = Template.FindName("Text", this) as TextBox;
}
public void Select(int start, int length)
{
if (_textBox == null) return;
_textBox.Select(start, length);
}
}
謝謝,萊昂!我會試試這個。 – enlilbinny