AutoCompleteBox是SliverLight中的自动提示框控件,其中有一个ItemsSource属性,用于绑定数据源
下面是一个例子【源码下载】
1.AccordionSample.xaml
- <UserControl xmlns:input="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Input" x:Class="Silverlight.Common.View.AutoCompleteBoxSample"
- xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
- xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
- mc:Ignorable="d"
- d:DesignHeight="300" d:DesignWidth="400" Loaded="UserControl_Loaded">
- <Grid x:Name="LayoutRoot" Background="White">
- <Grid.RowDefinitions>
- <RowDefinition Height="auto"/>
- </Grid.RowDefinitions>
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="auto"/>
- <ColumnDefinition Width="auto"/>
- </Grid.ColumnDefinitions>
- <TextBlock Text="自动提示(数据源):" HorizontalAlignment="Center" VerticalAlignment="Center"></TextBlock>
- <input:AutoCompleteBox x:Name="AutoCompleteBox1" Grid.Column="1" Grid.Row="0" IsTextCompletionEnabled="True" Height="23" IsDropDownOpen="True" TabNavigation="Cycle"/>
- <ContentPresenter x:Name="ContentPresenter1"/>
- </Grid>
- </UserControl>
2.AutoCompleteBoxSample.cs
- 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 Silverlight.Common.View
- {
- public partial class AutoCompleteBoxSample : UserControl
- {
- public AutoCompleteBoxSample()
- {
- InitializeComponent();
- }
- private void UserControl_Loaded(object sender, RoutedEventArgs e)
- {
- this.AutoCompleteBox1.ItemsSource = DataSource.GetDataSource();
- }
- }
- }
3.DataSource.cs
- using System;
- using System.Net;
- using System.Windows;
- using System.Windows.Controls;
- using System.Windows.Documents;
- using System.Windows.Ink;
- using System.Windows.Input;
- using System.Windows.Media;
- using System.Windows.Media.Animation;
- using System.Windows.Shapes;
- using System.Collections;
- using System.Collections.Generic;
- namespace Silverlight.Common
- {
- public static class DataSource
- {
- public static IList<string> GetDataSource()
- {
- IList<string> list = new List<string>();
- string[] data = new string[10] { "aaa", "bbb", "ccc", "ddd", "eee", "fff", "ggg", "hhh", "iii", "jjj" };
- for (int i = 0; i < data.Length; i++)
- {
- list.Add(data[i]);
- }
- return list;
- }
- }
- }