은 내가 바인딩 할 List<SampleData>
자동 완성 윈도우 폰 7
lstSelectedNumber.itemsource = List<SampleData>;
처럼 그리고 내 autocompletebox 내 컬렉션에 부착이
<ListBox Name="lstSelectedNumber" Height="50" MaxHeight="120" VerticalAlignment="Top" Grid.Column="1" SelectionChanged="lstSelectedNumber_SelectionChanged">
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="Padding" Value="-15" />
<Setter Property="Margin" Value="0"/>
</Style>
</ListBox.ItemContainerStyle>
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<toolkit:WrapPanel>
</toolkit:WrapPanel>
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemTemplate>
<DataTemplate>
<toolkit:AutoCompleteBox x:Name="acBox" FilterMode="StartsWith" ValueMemberBinding="{Binding Name,Mode=TwoWay}">
<toolkit:AutoCompleteBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Image Source="{Binding Image}" Stretch="None" Margin="0,0,5,5"/>
<TextBlock Text="{Binding Name}"/>
</StackPanel>
</DataTemplate>
</toolkit:AutoCompleteBox.ItemTemplate>
</toolkit:AutoCompleteBox>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
내 Listbox
처럼 내 WP7 페이지에 Listbox
이 다른 컬렉션에 내 자동 완료 상자 그래서 사용자가 내 텍스트 상자에 입력하면 사용자에게 제안을 표시하고 일단 사용자가 다른 항목을 선택하면이 항목을 다른 컬렉션에 추가합니다 목록 나는 하나의 문제에 직면하고있다 : 어떻게 목록을 더 복잡한 절차를 수행 할 수있는 자동 완성 상자에 바인딩 할 수 있는가?
UPDATE
내가 이런 식으로 내 목록 상자 컨트롤을 찾기 위해 시도하고 있지만이 차일
private void SearchVisualTree(DependencyObject targetElement)
{
var count = VisualTreeHelper.GetChildrenCount(targetElement);
if (count == 0)
return;
for (int i = 0; i < count; i++)
{
var child = VisualTreeHelper.GetChild(targetElement, i);
if (child is AutoCompleteBox)
{
AutoCompleteBox myItems = (AutoCompleteBox)child;
if (myItems.Name == "acBox")
{
// My Logic
return;
}
}
else
{
SearchVisualTree(child);
}
}
}
이 방법으로 내 페이지 생성자
에 전화 했어 항상 나 0을 반환
SearchVisualTree(this.lstSelectedNumber);
Shift 키에 문제가있는 것 같습니다. 간헐적으로 입력하는 모든 첫 번째 문자에 붙어있는 것 같습니다. 그걸 고쳐 줄게. –