添加资源,绑定即可,可以即时曾现效果,其他类参考带有所有库的文章
<Window x:Class="WpfApp4.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:WpfApp4"
xmlns:data="clr-namespace:ClassLibrary;assembly=ClassLibrary"
mc:Ignorable="d"
Title="MainWindow" Height="564.84" Width="802.497">
<Window.Resources>
<ObjectDataProvider ObjectType="{x:Type data:StoreDB}" MethodName="GetProducts" IsAsynchronous="True" x:Key="dataProvider"></ObjectDataProvider>
</Window.Resources>
<Grid Margin="10">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"></ColumnDefinition>
<ColumnDefinition Width="5*"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="5*"></RowDefinition>
<RowDefinition Height="2*"></RowDefinition>
<RowDefinition Height="5*"></RowDefinition>
</Grid.RowDefinitions>
<Border Grid.Row="0" Grid.ColumnSpan="2" BorderBrush="Black" BorderThickness="1" CornerRadius="8" Margin="3">
<ListBox x:Name="lstProducts" ItemsSource="{Binding Source={StaticResource dataProvider}}" DisplayMemberPath="ModelName"></ListBox>
</Border>
<Border Grid.Row="1" Grid.ColumnSpan="2" BorderBrush="Black" BorderThickness="1" CornerRadius="8" Margin="3">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center" Height="30">
<Button x:Name="GetProducts" Margin="3" Content="Get Products" Padding="3" Click="GetProducts_Click"/>
<Button x:Name="InsertProduct" Margin="3" Content="Insert Products" Padding="3" Click="InsertProduct_Click"></Button>
<Button x:Name="DeleteProduct" Margin="3" Content="Delete Products" Padding="3" Click="DeleteProduct_Click"></Button>
</StackPanel>
</Border>
<Border Grid.Row="2" Grid.ColumnSpan="2" BorderBrush="Black" BorderThickness="1" CornerRadius="8" Margin="3">
<Grid DataContext="{Binding ElementName=lstProducts, Path=SelectedItem}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"></ColumnDefinition>
<ColumnDefinition Width="5*"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
</Grid.RowDefinitions>
<TextBlock Grid.Row="0" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="3">CategoryID</TextBlock>
<TextBox Grid.Row="0" Grid.Column="1" Margin="3" Name="txtCategoryID" Text="{Binding CategoryID}"></TextBox>
<TextBlock Grid.Row="1" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="3">ModelNumber</TextBlock>
<TextBox Grid.Row="1" Grid.Column="1" Margin="3" Name="txtModelNumber" Text="{Binding ModelNumber}"></TextBox>
<TextBlock Grid.Row="2" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="3">ModelName</TextBlock>
<TextBox Grid.Row="2" Grid.Column="1" Margin="3" Name="txtModelName" Text="{Binding ModelName}"></TextBox>
<TextBlock Grid.Row="3" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="3">ProductImage</TextBlock>
<TextBox Grid.Row="3" Grid.Column="1" Margin="3" Name="txtProductImage" Text="{Binding ProductImage}"></TextBox>
<TextBlock Grid.Row="4" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="3">UnitCost</TextBlock>
<TextBox Grid.Row="4" Grid.Column="1" Margin="3" Name="txtUnitCost" Validation.Error="txtUnitCost_Error">
<TextBox.Text>
<Binding Path="UnitCost" NotifyOnValidationError="true">
<Binding.ValidationRules>
<local:PriceValidationRule Min="10" Max="100"></local:PriceValidationRule>
</Binding.ValidationRules>
</Binding>
</TextBox.Text>
</TextBox>
<TextBlock Grid.Row="5" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="3">Description</TextBlock>
<TextBox Grid.Row="5" Grid.Column="1" Margin="3" Name="txtDescription" Text="{Binding Description}"></TextBox>
</Grid>
</Border>
</Grid>
</Window>
因篇幅问题不能全部显示,请点此查看更多更全内容