您的位置:首页 > 其它

在Silverlight中使用textbox实现下拉列表

2011-05-07 22:24 351 查看

public void GetShow(TextBox txtBox, List<FontFamily> font)
{
Popup p = new Popup();
Border border = new Border();
border.BorderBrush = new SolidColorBrush(Colors.Blue);
border.BorderThickness = new Thickness(0);

StackPanel panel1 = new StackPanel();
panel1.Background = new SolidColorBrush(Colors.White);

ListBox list = new ListBox();
list.Height = 100;
list.Width = txtBox.Width;
list.ItemsSource = font;
list.SelectionChanged += new SelectionChangedEventHandler((sender,e) => //添加选择到textbox空间上
{
txtBox.Text = list.SelectedItem.ToString();
panel1.Width = txtBox.Width;
if (txtBox.Text != "" || txtBox.Text != null)
p.IsOpen = false;
});
panel1.Children.Add(list);
border.Child = panel1;
p.Child = border;
p.VerticalOffset = txtBox.Margin.Top + txtBox.Height; //让创建的面板始终都在textbox空间的下方
p.HorizontalOffset =txtBox.Margin.Left;
p.IsOpen = true;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: