0

我还有另一个绑定问题。这次我想重建这里显示的主从网格:

http://www.codeproject.com/Articles/30905/WPF-DataGrid-Practical-Examples#masterdetail

但我收到此错误:名称空间“clr-namespace:WpfApplicationDataSetTest”中不存在名称“AirplaneDataProvider”

这是我的代码

XAML:

<Window x:Class="WpfApplicationDataSetTest.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="clr-namespace:WpfApplicationDataSetTest"
    Title="MainWindow" Height="350" Width="525">

<Window.Resources>
    <ObjectDataProvider x:Key="AirplaneDataProvider" ObjectType="{x:Type local:AirplaneDataProvider}"/>        
    <ObjectDataProvider x:Key="Airplanes" ObjectInstance="{StaticResource AirplaneDataProvider}" MethodName="GetAirplanes" />
</Window.Resources>

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="*"/>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="*"/>
    </Grid.ColumnDefinitions>

    <DataGrid Name="DGMaster" Grid.Row="0" ItemsSource="{Binding Source={StaticResource Airplanes}}" SelectedValuePath="AirplaneID">
    </DataGrid>
</Grid>

C#:

命名空间 WpfApplicationDataSetTest { 公共部分类 MainWindow : Window { public MainWindow() { InitializeComponent();
}

    public class AirplaneDataProvider
    {
        private AirplaneTestDataSetTableAdapters.AirplaneTableAdapter AirTA;
        private AirplaneTestDataSet AirTDS;

        public AirplaneDataProvider()
        {
            AirTDS = new AirplaneTestDataSet();
            AirTA = new AirplaneTestDataSetTableAdapters.AirplaneTableAdapter();
            AirTA.Fill(AirTDS.Airplane);
        }

        public DataView GetAirplanes()
        {
            return AirTDS.Airplane.DefaultView;
        }
    }
}

}

那么我做错了什么?

4

1 回答 1

0

将 AirplaneDataProvider 类放入单独的文件中。

现在你在 MainWindow 类中有了它。希望这就是问题所在。

于 2015-08-04T08:37:22.990 回答