WPF智能输入提示
来源:互联网 发布:招商局集团 知乎 编辑:程序博客网 时间:2024/04/30 14:21
WPF智能输入提示是用一个textBox和Popup完成的,下面看具体代码:
<Window x:Class="WPFPopup.ABCD"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"Title="ABCD" Height="300" Width="300"><Grid><TextBox Canvas.Left="371" Canvas.Top="25" Height="23" Name="textBox1" Width="120" KeyUp="textBox1_KeyUp" Margin="75,79,83,159" /><TextBlock Height="23" HorizontalAlignment="Left" Margin="75,44,0,0" Name="textBlock1" Text="TextBlock" VerticalAlignment="Top" Width="155" /></Grid></Window>
namespace WPFPopup{/// <summary>/// ABCD.xaml 的交互逻辑/// </summary>public partial class ABCD : Window{public List<string> listStr;public ABCD(){InitializeComponent();listStr = new List<string>();listStr.Add("a");listStr.Add("ab");listStr.Add("abc");listStr.Add("abcd");listStr.Add("b");listStr.Add("bc");listStr.Add("bcd");listStr.Add("c");listStr.Add("cd");listStr.Add("d");listStr.Add("da");listStr.Add("dab");listStr.Add("dabc");}public Popup pop = new Popup();private void textBox1_KeyUp(object sender, KeyEventArgs e){if (textBox1.Text != ""){var item = listStr.Where(a => a.Contains(textBox1.Text));if (item.ToList<string>().Count > 0){pop = this.createPopup(pop, item.ToList<string>(), textBox1);pop.IsOpen = true;}else{pop.IsOpen = false;}}else{pop.IsOpen = false;}}public void listbox_MouseDoubleClick(object sender, MouseButtonEventArgs e){ListBox box = sender as ListBox;string itemvalue = box.SelectedValue as string;this.textBlock1.Text = itemvalue;this.textBox1.Text = itemvalue;pop.IsOpen = false;}public Popup createPopup(Popup pop, List<string> listSource, UIElement element){Border border = new Border();border.BorderBrush = new SolidColorBrush(Colors.Black);//border.BorderThickness = new Thickness(1.0);//设置边框宽度StackPanel panel1 = new StackPanel();panel1.Children.Clear();panel1.Background = new SolidColorBrush(Colors.LightGray);ListBox listbox = new ListBox();listbox.Background = new SolidColorBrush(Colors.WhiteSmoke);listbox.MinWidth = 100;listbox.Height = 120;listbox.ItemsSource = listSource;listbox.MouseDoubleClick += new MouseButtonEventHandler(listbox_MouseDoubleClick);panel1.Children.Add(listbox);border.Child = panel1;pop.Child = border;pop.PlacementTarget = element;return pop;}}}
- WPF智能输入提示
- WPF制作的一个小功能,输入智能提示(IntelliSense)
- ComboBox框输入智能提示
- Ajax 输入框智能提示
- VS Xaml WPF智能提示消失 解决方法
- 文本框输入下拉智能提示---sql
- PyQt: LineEdit的智能输入提示
- AutoComplete.js输入智能提示插件
- input文本框输入框智能文字提示
- 输入框智能提示(一)
- 输入框智能提示(二)
- 【WPF】自动完成/智能提示的文本框(AutoCompleteBox)
- ajax(2)实现智能输入提示(类似百度搜索框智能输入)
- WPF 邮箱输入框提示 和 手机号码验证
- WPF 邮箱输入框提示 和 手机号码验证 .
- wpf 实现 类似网页里的 输入提示
- 用txt做数据源和winfrom textbox输入智能提示
- 基于 jQuery & CSS3 实现智能提示输入框光标位置
- cocos2d-x 2.x版本之windows win32 win 64 win7 winxp环境搭配 超级详细
- 51单片机keilC中头文件absacc.h作用
- Oracle10g 报错'java.lang.Exception: No such metric'的解决方法
- python uuid模块
- 生成器模式
- WPF智能输入提示
- Redis+PHP常用命令总结
- Struts2返回JSON数据的具体应用范例
- OEM:Unable to initialize ssl connection with server, aborting connection attempt
- java容器
- Kinect for Windows培训视频
- poj2406——Power Strings(KMP)
- PHPCMS:V9友情链接标签使用说明
- Linux 下定时器的实现方式分析