源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

c#数据绑定之数据转化为信息的示例

  • 时间:2020-11-27 13:17 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:c#数据绑定之数据转化为信息的示例
目标界面: [img]http://files.jb51.net/file_images/article/201404/20140410142830.jpg?2014310142933[/img] XAML代码:
[u]复制代码[/u] 代码如下:
<Grid Margin="2">             <Grid.RowDefinitions>                 <RowDefinition  Height="Auto"/>                 <RowDefinition  Height="Auto"/>                 <RowDefinition  Height="Auto"/>                 <RowDefinition />             </Grid.RowDefinitions>             <GroupBox Header="Customer" Grid.Row="0" Padding="5">                 <Grid>                     <Grid.RowDefinitions>                         <RowDefinition />                         <RowDefinition />                         <RowDefinition/>                     </Grid.RowDefinitions>                     <Grid.ColumnDefinitions>                         <ColumnDefinition Width="Auto"/>                         <ColumnDefinition/>                     </Grid.ColumnDefinitions>                     <TextBlock Grid.Row="0" Grid.Column="0" Text="CustomerID" Margin="2" HorizontalAlignment="Right" VerticalAlignment="Center"/>                     <TextBox Grid.Row="0" Grid.Column="1" Margin="2" Name="tbxCustomerID" Text="{Binding Path=CID}"/>                     <TextBlock Grid.Row="1" Grid.Column="0" Text="CustomerName" Margin="2" HorizontalAlignment="Right" VerticalAlignment="Center"/>                     <TextBox Grid.Row="1" Grid.Column="1" Margin="2" Name="tbxCustomerName" Text="{Binding Path=Name}"/>                     <Button Grid.Row="2" Grid.Column="1" Content="Add New Customer" Margin="2" Name="btnAddCustomer" Padding="2" Click="btnAddCustomer_Click" />                 </Grid>             </GroupBox>             <GroupBox Header="Order" Grid.Row="1" Padding="5">                 <Grid>                     <Grid.RowDefinitions>                         <RowDefinition />                         <RowDefinition />                         <RowDefinition />                         <RowDefinition />                         <RowDefinition />                     </Grid.RowDefinitions>                     <Grid.ColumnDefinitions>                         <ColumnDefinition Width="Auto"/>                         <ColumnDefinition/>                     </Grid.ColumnDefinitions>                     <TextBlock Grid.Row="0" Grid.Column="0" Text="OrderID" Margin="2" HorizontalAlignment="Right" VerticalAlignment="Center"/>                     <TextBox Grid.Row="0" Grid.Column="1" Margin="2" Name="tbxOrderID" Text="{Binding Path=OID}"/>                     <TextBlock Grid.Row="1" Grid.Column="0" Text="OrderName" Margin="2" HorizontalAlignment="Right" VerticalAlignment="Center"/>                     <TextBox Grid.Row="1" Grid.Column="1" Margin="2" Name="tbxOrderName" Text="{Binding Path=Customer}"/>                     <TextBlock Grid.Row="2" Grid.Column="0" Text="Subtotal" Margin="2" HorizontalAlignment="Right" VerticalAlignment="Center"/>                     <TextBox Grid.Row="2" Grid.Column="1" Margin="2" Name="tbxSubtotal" Text="{Binding Path=Subtotal}"/>                     <TextBlock Grid.Row="3" Grid.Column="0" Text="TaxRate" Margin="2" HorizontalAlignment="Right" VerticalAlignment="Center"/>                     <TextBox Grid.Row="3" Grid.Column="1" Margin="2" Name="tbxTaxRate" Text="{Binding Path=TaxRate}"/>                     <Button Grid.Row="4" Grid.Column="1" Content="Add New Order" Margin="2" Name="btnAddOrder" Padding="2" Click="btnAddOrder_Click" />                 </Grid>             </GroupBox>             <ListView Name="lstDisplayCustomer" ItemsSource="{Binding}" Grid.Row="2"  Margin="2" MinHeight="150">                 <ListView.View>                     <GridView>                         <GridView.Columns>                             <GridViewColumn  Header="CustomerID" DisplayMemberBinding="{Binding CID}"/>                             <GridViewColumn Header="CustomerName" DisplayMemberBinding="{Binding Name}"/>                             <GridViewColumn Header="Total" DisplayMemberBinding="{Binding OrderTotals}" />                         </GridView.Columns>                     </GridView>                 </ListView.View>             </ListView>             <ListView Name="lstDisplayOrder" ItemsSource="{Binding}" Grid.Row="3"  Margin="2" MinHeight="150">                 <ListView.View>                     <GridView>                         <GridView.Columns>                             <GridViewColumn  Header="OrderID" DisplayMemberBinding="{Binding OID}"/>                             <GridViewColumn Header="Customer" DisplayMemberBinding="{Binding Customer}"/>                             <GridViewColumn Header="Subtotal" DisplayMemberBinding="{Binding Subtotal}"/>                             <GridViewColumn Header="TaxRate"  DisplayMemberBinding="{Binding TaxRate}" />                             <GridViewColumn Header="Total"    DisplayMemberBinding="{Binding Total}"/>                         </GridView.Columns>                     </GridView>                 </ListView.View>             </ListView>         </Grid>
C# 代码:
[u]复制代码[/u] 代码如下:
DataSet business = NewData();         public MainWindow()         {             InitializeComponent();         }         private static DataSet NewData()         {             //-----build the parent table and add some data             DataTable customer = new DataTable("Customer");             customer.Columns.Add("CID", typeof(Int32));             customer.Columns.Add("Name", typeof(string));             //-------build the child table and add some data.             DataTable orders = new DataTable("Order");             orders.Columns.Add("OID", typeof(int));             orders.Columns.Add("Customer", typeof(Int32));             orders.Columns.Add("Subtotal", typeof(decimal));             orders.Columns.Add("TaxRate", typeof(decimal));             orders.Columns.Add("Total",typeof(decimal),"Subtotal*(1+TaxRate)");             //-----Link the table within a Dataset.             DataSet business = new DataSet();             business.Tables.Add(customer);             business.Tables.Add(orders);             business.Relations.Add(customer.Columns["CID"],orders.Columns["Customer"]);             customer.Columns.Add("OrderTotals" ,typeof(decimal),"Sum(Child.Total)");             return business;         }         private void btnAddCustomer_Click(object sender, RoutedEventArgs e)         {            //Vist datatable customer.             DataTable customer=business.Tables["Customer"];             NewMember(customer);             lstDisplayCustomer.DataContext = customer;         }         private DataTable NewMember(DataTable table)         {             DataRow newRow = table.NewRow();             newRow["CID"] = tbxCustomerID.Text;             newRow["Name"] = tbxCustomerName.Text;             table.Rows.Add(newRow);             return table;         }         private DataTable NewMemberOrder(DataTable table)         {             DataRow newRow = table.NewRow();             newRow["OID"] = tbxOrderID.Text;             newRow["Customer"] = tbxOrderName.Text;             newRow["Subtotal"] = tbxSubtotal.Text;             newRow["TaxRate"] = tbxTaxRate.Text;             table.Rows.Add(newRow);             return table;         }         private void btnAddOrder_Click(object sender, RoutedEventArgs e)         {             //Vist datatable order.             DataTable order = business.Tables["Order"];             NewMemberOrder(order);             lstDisplayOrder.DataContext = order;         }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部