码迷,mamicode.com
首页 > Windows程序 > 详细

WPF-DataGrid增删改查绑定数据源

时间:2019-05-22 17:47:27      阅读:665      评论:0      收藏:0      [点我收藏+]

标签:ima   tag   prot   图片   ems   ber   err   base64   img   

Xaml

    <DataGrid Height="200"
                               Name="dataGrid1"
                                        Margin="5,0,5,0"
                                        VerticalAlignment="Top"
                                        AlternationCount="2"
                                        AutoGenerateColumns="False"
                                        CanUserAddRows="False"
                                        CanUserDeleteRows="False"
                                        CanUserReorderColumns="False"
                                        CanUserResizeColumns="False"
                                        CanUserResizeRows="False"
                                        CanUserSortColumns="False"
                                        IsReadOnly="True"
                                        RowHeaderWidth="0"
                                        SelectionMode="Single">
                            <DataGrid.Columns>
                                <DataGridTextColumn Width="8*" Header="账号"  Binding="{Binding Name}"></DataGridTextColumn>
                                <DataGridTemplateColumn Width="2*"  Header="状态"  >
                                    <DataGridTemplateColumn.CellTemplate>
                                        <DataTemplate>
                                            <TextBlock
                                                            Margin="0,0,0,0"
                                                            Foreground="#666666"
                                                            Text="{Binding Age}" />
                                        </DataTemplate>
                                    </DataGridTemplateColumn.CellTemplate>
                                </DataGridTemplateColumn>
                            </DataGrid.Columns>
                        </DataGrid>
技术图片

建立实体类

    public class User : INotifyPropertyChanged
    {
        private string name;
        public string Name
        {
            get
            {
                return name;
            }
            set
            {
                name = value;
                OnPropertyChanged("Name");
            }
        }
        public string Age { get; set; }
 
        public event PropertyChangedEventHandler PropertyChanged;
        protected void OnPropertyChanged(string propertyName)
        {
            if (PropertyChanged != null)
            {
                PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
            }
        }
    }
技术图片

增删改

        private void add_Click(object sender, RoutedEventArgs e)
        {
            //修改数据源后需手动重新赋值
            datalist.Add(new User ());
            dataGrid1.ItemsSource = null;
            dataGrid1.ItemsSource = datalist;
        }

        private void delete_Click(object sender, RoutedEventArgs e)
        {
            if (dataGrid1.SelectedIndex >= 0)
            {
                //修改数据源后需手动重新赋值
                datalist.RemoveAt(dataGrid1.SelectedIndex);
                dataGrid1.ItemsSource = null;
                dataGrid1.ItemsSource = datalist;
            }
        }

        private void update_Click(object sender, RoutedEventArgs e)
        {
            if (dataGrid1.SelectedIndex >= 0)
            {
                //修改前台后数据源也会一起改变
                SubRowsId().Name = "update";
            }
        }
        #region 获取选中行的原始值
        /// <summary>
        /// 获取选中行的原始值
        /// </summary>
        /// <param name="rowindex"></param>
        private User SubRowsId()
        {
            return (User)dataGrid1.SelectedItem;
        }
        #endregion
技术图片

WPF-DataGrid增删改查绑定数据源

标签:ima   tag   prot   图片   ems   ber   err   base64   img   

原文地址:https://www.cnblogs.com/wangyinlon/p/10906862.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!