控件中數據模板禁用小鍵盤減號折疊
阿新 • • 發佈:2017-06-28
send 當前 void down 輸入 後臺 進行 listview prev
WPF裏面自定義了TreeListView控件,在樹列表項的數據模板中添加了文本框,當在文本框內輸入小鍵盤的減號時,自動折疊;因為小鍵盤+與-符號是自動折疊的;可以對win7及以上系統 的文件夾列表樹,進行驗證;為了禁止輸入時不折疊,使用以下代碼實現
<controls:TreeListView.Columns>
<GridViewColumn Header="列頭名稱">
<DataTemplate>
<TextBox Text="{Binding Name}" PreviewkeyDown="textBox_PreviewkeyDown"/>
</DataTemplate>
</GridViewColumn>
</controls:TreeListView.Columns>
後臺代碼
private void textBox_PreviewkeyDown(object sender,KeyEventArgs e)
{
if(e.KeyStates==Keyborad.GetKeyStates(Key.Subtract))
{
TextBox t1=sender as TextBox;
int index = t1.SelectionStart; //當前光標位置
t1.Text = t1.Text.ToString().Insert(index,"-");
e.Handled = True;//禁用小鍵盤減號折疊
}
}
控件中數據模板禁用小鍵盤減號折疊