1

在 XAML/C# 中的访问表单中构建数据导航的最佳方法是什么?

我是否应该构建一个用户控件(甚至自定义控件),然后将其绑定到我的集合中,以便在其中放置其他控件?(因此这个问题:C# User Control that can contain other Controls (when using it)

或者我可以通过某种方式从 ItemsControl 派生来构建一些东西吗?如何?

或者今天会完全不同(比如“这种导航风格是去年的!”)?

我对 C# 和所有人都比较陌生(不是这样编程,而是更像“家庭主妇语言”Access-VBA),我也不是以英语为母语的人。所以请温柔=)

4

2 回答 2

1

您可以创建用户控件并在其中放置一堆按钮(First、Prev、Next、Last 等)并将其放置在主窗口中。其次,您可以将数据导航用户控件绑定到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">&lt;</Button>
    <Button x:Name="Next" Click="Next_Click">&gt;</Button>
    <!-- and so on -->
</StackPanel>

您的点击处理程序如下所示:

private void Prev_Click(object sender, RoutedEventArgs e)
{
    ICollectionView view = CollectionViewSource.GetDefaultView(DataContext);
    if (view != null)
    {
        view.MoveCurrentToPrevious();
    }
}

我希望这有帮助。

于 2009-06-19T11:34:51.197 回答
0

听起来您在使用 DataGrid 控件。Microsoft 正在发布 WPF DataGrid 作为 WPF 工具包的一部分,您可以在此处下载:http ://wpf.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=25047 。

于 2009-06-19T11:21:42.297 回答