WPF 中类似访问的数据导航?
-
06-07-2019 - |
题
构建数据导航(如 XAML/C# 中的访问表单)的最佳方法是什么?
我是否应该构建一个用户控件(甚至自定义控件),将其绑定到我的集合,以便在其中放置其他控件?(因此这个问题: 可以包含其他控件的 C# 用户控件(使用时) )
或者我可以通过以某种方式从 ItemsControl 派生来构建一些东西吗?如何?
或者今天的做法会完全不同吗(比如“这种导航风格是去年的!”)?
我对 C# 等都比较陌生(不是这样的编程,而是更像“家庭主妇语言”Access-VBA),而且我的母语不是英语。所以请温柔一点=)
解决方案
您可以创建用户控件并在其中放置一堆按钮(第一个、上一个、下一个、最后一个等),然后将其放置在主窗口上。其次,您可以将数据导航用户控件绑定到 CollectionViewSource
这将帮助您在数据中导航。
您的主窗口:
<Window.Resources>
<CollectionViewSource x:Key="items" Source="{Binding}" />
</Window.Resources>
<Grid>
<WpfApplication1:DataNavigation DataContext="{Binding Source={StaticResource items}}" />
<StackPanel>
<TextBox Text="{Binding Source={StaticResource items},Path=Name}" />
</StackPanel>
</Grid>
您的数据导航用户控件:
<StackPanel>
<Button x:Name="Prev" Click="Prev_Click"><</Button>
<Button x:Name="Next" Click="Next_Click">></Button>
<!-- and so on -->
</StackPanel>
您的点击处理程序如下所示:
private void Prev_Click(object sender, RoutedEventArgs e)
{
ICollectionView view = CollectionViewSource.GetDefaultView(DataContext);
if (view != null)
{
view.MoveCurrentToPrevious();
}
}
我希望这有帮助。
其他提示
听起来您正在寻找 DataGrid 控件。Microsoft 正在发布 WPF DataGrid 作为 WPF 工具包的一部分,您可以在此处下载: http://wpf.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=25047.
不隶属于 StackOverflow