• Silverlight DataFormHeterogeneousDataSample 示例


    xaml

    <UserControl x:Class="System.Windows.Controls.Samples.DataFormHeterogeneousDataSample"
        xmlns
    ="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
        xmlns:x
    ="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:dataform
    ="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data.DataForm.Toolkit"
        xmlns:input
    ="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Input.Toolkit"
        xmlns:sys
    ="clr-namespace:System;assembly=mscorlib">
        
    <StackPanel>
            
    <ContentControl Content="DataForm with Heterogeneous Data" />
            
    <StackPanel>
                
    <Grid>
                    
    <Grid.ColumnDefinitions>
                        
    <ColumnDefinition Width="Auto" />
                        
    <ColumnDefinition />
                    
    </Grid.ColumnDefinitions>
                    
    <StackPanel Grid.Column="0">
                        
    <CheckBox Content="AutoCommit" IsChecked="{Binding AutoCommit, ElementName=dataForm, Mode=TwoWay}" Margin="4" />
                        
    <CheckBox Content="AutoEdit" IsChecked="{Binding AutoEdit, ElementName=dataForm, Mode=TwoWay}" Margin="4" />
                        
    <TextBlock Text="CommandButtonsVisibility"  Margin="4" />
                        
    <ComboBox SelectedItem="{Binding CommandButtonsVisibility, ElementName=dataForm, Mode=TwoWay}" SelectedIndex="0" Margin="4">
                            
    <sys:String>All</sys:String>
                            
    <sys:String>Add</sys:String>
                            
    <sys:String>Delete</sys:String>
                            
    <sys:String>Edit</sys:String>
                            
    <sys:String>Navigation</sys:String>
                            
    <sys:String>None</sys:String>
                        
    </ComboBox>
                        
    <CheckBox Content="IsReadOnly" IsChecked="{Binding IsReadOnly, ElementName=dataForm, Mode=TwoWay}" Margin="4" />
                    
    </StackPanel>
                    
    <dataform:DataForm x:Name="dataForm" Width="350" ItemsSource="{Binding}" HorizontalAlignment="Left" MaxWidth="500" Margin="4" Grid.Column="1" />
                
    </Grid>
            
    </StackPanel>
        
    </StackPanel>
    </UserControl>

    c#

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Net;
    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Documents;
    using System.Windows.Input;
    using System.Windows.Media;
    using System.Windows.Media.Animation;
    using System.Windows.Shapes;
    using System.Collections.ObjectModel;

    namespace System.Windows.Controls.Samples
    {
        
    public partial class DataFormHeterogeneousDataSample : UserControl
        {
            
    public DataFormHeterogeneousDataSample()
            {
                InitializeComponent();
                DataContext 
    = PersonData.GetData();
            }

            
    private void button1_Click(object sender, RoutedEventArgs e)
            {
                
    object o = dataForm.CurrentItem;
            }
        }

        
    public class PersonData
        {
            
    public static ObservableCollection<People> GetData()
            {
                
    return new ObservableCollection<People>
                            {
                                
    new People
                                {
                                    FirstName 
    = "Kim",
                                    LastName 
    = "Abercrombie",
                                    Phone 
    = "(555) 555-0000",
                                    Street1 
    = "1 Anywhere Street",
                                    City 
    = "Anytown",
                                    State 
    = "WA",
                                    Zip 
    = 12345
                                },
                                
    new People
                                {
                                    FirstName 
    = "Hadaya",
                                    LastName 
    = "Sagiv",
                                    Phone 
    = "(555) 555-0001",
                                    Street1 
    = "2 Anywhere Street",
                                    City 
    = "AnotherTown",
                                    State 
    = "HI",
                                    Zip 
    = 55555
                                },
                                
    new People
                                {
                                    FirstName 
    = "Jeff",
                                    LastName 
    = "Price",
                                    Phone 
    = "(555) 555-0002",
                                    Street1 
    = "3 Somewhere Street",
                                    City 
    = "Anytown",
                                    State 
    = "OR",
                                    Zip 
    = 77777
                                },
                                
    new People
                                {
                                    FirstName 
    = "Chris",
                                    LastName 
    = "Hill",
                                    Phone 
    = "(555) 555-0431",
                                    Street1 
    = "17 Anywhere Lane",
                                    City 
    = "AnotherTown",
                                    State 
    = "WA",
                                    Zip 
    = 28145
                                }
                            };
            }
        }

        
    public class People
        {
            
    private string firstName;

            
    public string FirstName
            {
                
    get { return firstName; }
                
    set { firstName = value; }
            }
            
    private string lastName;

            
    public string LastName
            {
                
    get { return lastName; }
                
    set { lastName = value; }
            }
            
    private string phone;

            
    public string Phone
            {
                
    get { return phone; }
                
    set { phone = value; }
            }
            
    private string street1;

            
    public string Street1
            {
                
    get { return street1; }
                
    set { street1 = value; }
            }
            
    private string street2;

            
    public string Street2
            {
                
    get { return street2; }
                
    set { street2 = value; }
            }
            
    private string city;

            
    public string City
            {
                
    get { return city; }
                
    set { city = value; }
            }
            
    private string state;

            
    public string State
            {
                
    get { return state; }
                
    set { state = value; }
            }
            
    private string email;

            
    public string Email
            {
                
    get { return email; }
                
    set { email = value; }
            }
            
    private int zip;

            
    public int Zip
            {
                
    get { return zip; }
                
    set { zip = value; }
            }
            
    private bool isBusinessAddress;

            
    public bool IsBusinessAddress
            {
                
    get { return isBusinessAddress; }
                
    set { isBusinessAddress = value; }
            }
        }
    }
  • 相关阅读:
    五分钟上手Markdown
    css中居中方法小结
    事务和同步锁
    插入排序
    插入排序
    交换排序
    eclipse 常用快捷键
    交换排序
    二叉搜索树(BST)
    二叉树遍历以及根据前序遍历序列反向生成二叉树
  • 原文地址:https://www.cnblogs.com/xh831213/p/1782359.html
Copyright © 2020-2023  润新知