using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
namespace AutoCompleteBindingData
{
public partial class MainPage : UserControl
{
List<string>
strList = new List<string>();
public MainPage()
{
InitializeComponent();
string
str = "abc,acd,ade,bcd,cde,def,efg,fgh,ghi,
hijv,jkl";
strList = str.Split(',').ToList();
autoCompleteBox1.ItemsSource = strList;
autoCompleteBox1.KeyUp += new KeyEventHandler(autoCompleteBox1_KeyUp);
}
void autoCompleteBox1_KeyUp(object
sender, KeyEventArgs e)
{
}
string lastSear = "";
private void
autoCompleteBox1_KeyDown(object sender, KeyEventArgs e)
{
bool isExist = false;
string st = autoCompleteBox1.SearchText;
if (e.PlatformKeyCode != 32)
{
st = st + e.Key;
}
else
{
st = st + " ";
}
st = st.ToLower();
foreach (string str in strList)
{
if (str.ToLower().Contains(st))
{
int stLen = st.Length;
string subStr = str.Substring(0,
stLen).ToLower();
if
(subStr.Equals(st))
{
isExist = true;
break;
}
}
}
if (!isExist)
{
e.Handled = true;
}
}
}
}
<Grid x:Name="LayoutRoot" Background="White">
<sdk:AutoCompleteBox Height="28" HorizontalAlignment="Left" Margin="137,168,0,0" Name="autoCompleteBox1" VerticalAlignment="Top" Width="225" KeyDown="autoCompleteBox1_KeyDown" />
</Grid>
<Grid x:Name="LayoutRoot" Background="White">
<sdk:AutoCompleteBox Height="28" HorizontalAlignment="Left" Margin="137,168,0,0" Name="autoCompleteBox1" VerticalAlignment="Top" Width="225" KeyDown="autoCompleteBox1_KeyDown" />
</Grid>
No comments:
Post a Comment