Ste*_*ham 5 data-binding wpf listbox
我有一个ListBox,它通过Databinding将新项目添加到其中(即某些内容已添加到列表中,并且该框正在更新以包含新项目).
列表框中的项目是可编辑的数据模板,因此问题是:在添加新项目时,如何将焦点设置为模板中的第一个字段?
我已经看过这个问题了,我会看看它是否能让我随处可见,但这并不能直接回应我的问题.
您链接的问题应该适用于您的特定情况.只要您为源使用ObservableCollection,就可以设置:
<ListBox IsSynchronizedWithCurrentItem="True" ItemsSource="{Binding MyCollection}" ItemTemplate="{StaticResource MyTemplate}/>
Run Code Online (Sandbox Code Playgroud)
这将确保在添加项目时,将焦点放在新项目上,然后焦点管理器(查看该线程中的第一个响应)应该将焦点放在TextBox上.MSDN文章提供了一个有用的示例,在此处放入模板:
<DataTemplate x:Key="MyTemplate" DataType="{x:Type Classes:MyClass}">
<StackPanel FocusManager.FocusedElement="{Binding ElementName=firstButton}">
<Button Name="firstButton" />
</StackPanel>
</DataTemplate>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2183 次 |
| 最近记录: |