2011-05-03 65 views
2

我目前在telerik的radgrid控件中顯示數據,我想在名爲「Name」的列上添加一個自動文本框。我怎樣才能做到這一點?在silverlight中使用自動完成框?

我的radgrid只顯示數據,我希望每當用戶輸入到文本框的名稱列表彈出就像在stackoverflow網站。

請幫忙..我一直在使用silverlight,wcf ria服務,telerik控件。

回答

2

您可以使用Silverlight 4工具包中的自動完成文本框。該工具包是一組高級控件,不屬於Visual Studio核心庫的一部分。要下載&安裝,您可以致電here。一旦你安裝了它,你添加一個項目引用System.Windows.Controls添加到您的用戶控件聲明:

xmlns:input="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Input"

這給你的Silverlight工具包的參考點,特別是輸入控件。一旦這樣做了,這裏是一個使用自動完成文本框的例子:

<input:AutoCompleteBox IsTextCompletionEnabled="False" HorizontalAlignment="Left" ItemsSource="{StaticResource SampleEmployees}" SelectionChanged="OnSelectionChanged"/>

這直接來自從Silverlight工具包的文檔。 Link here。點擊左側菜單中的「自動完成框」(在標題:輸入下)。加載完成後,您可以通過單擊窗口底部的任何一個項目(例如「AutoCompleteBoxSample.xaml」或「AutoCompleteBoxSample.xaml.cs」)來查看XAML/C#這應該爲您提供開始/代碼,重新尋找。

就你而言,你還需要爲radgridview創建一個單元格模板。以下是可能的樣例:

<radControls:RadGridView x:Name="registerGridView" 
          AutoGenerateColumns="False"> 
     <radControls:RadGridView.Columns> 
      <radControls:GridViewToggleRowDetailsColumn /> 
      <radControls:GridViewDataColumn Header="Client" /> 
      <radControls:GridViewDataColumn Header="Site" /> 
      <radControls:GridViewDataColumn Header="Name"> 
       <radControls:GridViewDataColumn.CellTemplate> 
        <DataTemplate> 
         <StackPanel Orientation="Horizontal"> 
          <input:AutoCompleteBox HorizontalAlignment="Left" ItemsSource="{Binding Names}" SelectionChanged="OnSelectionChanged"/> 
         </StackPanel> 
        </DataTemplate> 
       </radControls:GridViewDataColumn.CellTemplate> 
      </radControls:GridViewDataColumn> 
     </radControls:RadGridView.Columns> 
    </radControls:RadGridView> 
+0

我特別需要自動填充框而不是組合框。 – iti 2011-05-04 04:32:26

+0

那麼[Silverlight Toolkit有一個自動完成框](http://www.silverlight.net/content/samples/sl4/toolkitcontrolsamples/run/default.html),這可能是你最好的選擇。可能應該帶領這一點。剛習慣Telerik :) [這是另一篇文章](http://forums.silverlight.net/forums/p/203770/477530.aspx#477530)有幾個選項/討論 – 2011-05-04 14:39:23

+0

我不熟悉xaml,我需要xaml代碼和c sharp的想法......但是,我只能從asp.net獲得幫助。請通過telerik radgrid項目搜索xaml,c#和自動填充框幫助我 – iti 2011-05-04 14:48:25