XML进阶增删改查及gdv的小知识

先介绍DategridView控件
表格控件,缩写:dgv,学习到的是几个实用属性的使用方法及所达到的效果.
1.contextMenuStrip:可以绑定该控件,很多控件都是会有的
2.SelectionMode:单击选择的样式,例如,单击选中一个单元格,选中一行等,他也是有Tag属性
这里回忆一下,数据库中的Id列是给程序员使用的,当使用该时,可以隐藏掉该列.当增删改查时,可以选择ID当成查找条件(因为唯一).
3.AutoGenerateColumns=true or false
官方注解:获取或设置一个值,该值只是在设置..属性时是否自动创建列
4.DateSource:
官方注解:获取或设置dgv所显示数据的数据源,他需要的是object类型.一般传递List<>
5.SelectedRows
官方注解:获取用户选定行的集合.
请注意,这获取到的是当前选中项的所有行的集合,可能是多行.例如
SelectedRows.count 当前选中项中的行数
SelectedRows[0].Cells[1].value:
value:官方注解为获取或设置与此单元格关联的值
在这边,集合是选中项的集合,而非原集合
6.SelectedRows[0].Selected=false;
Selected官方注解为:获取或设置一个指示行是否已被选定的值.当前表达的意义为当当前选中第一行的选中状态改为否
7.dgv.SelectedRows[int index1]Cells[int index2].value 表示index1行index2单元格的值,或许需要一个ToString()

XML
关键字:XDocument,是一个公共类
常用方法:
1.XDocument.Load(string uri)
官方注解:从文件创建新的System.Xml.Linq.XDocument.
请注意,该方法返回一个Xdocument 实例,注意接收.不接收相当于就是白做了…
例如
XDocument xDoc=XDocument.Load(“1.xml”)
2.xDoc.Root
官方注解:获取此文档的XML树的根元素
这是只读属性,无法设置
3.xDoc.Root.Elements
官方注解:按照文档顺序返回次元素的或文档子元素集合
4.XElment n=new XElement(XName name);
XElement官方注解:用指定的名称初始化XElement类的新实例
就是创建一个指定名称的XElement实例
5.n.Attribute(XName name)
官方注解:返回具有指定XName的XAttribute
英文翻译:属性,特质
通俗一点的说明,属性就是在xml中==前面的一截字符串
6.n.SetAttributeValue(XName name,object value);
官方注解:设置属性的值,添加属性或移除属性.这里可以实现添加或者修改
7.n.SetElementValue(XName name,object value)
官方注解:设置子元素的值.添加子元素或移除子元素
个人理解除了没有=且有头有尾的都是(如果你非要把属性和元素写在一行中,那我选择自杀)
这是可以实现添加或者修改
8.XElement s=xDoc.Root.Elements(XName name).where
官方注解:基于谓词筛选值序列.
谓词的百度百科:谓词,用来描述或判定客体性质、特征或者客体之间关系的词项.
9.Single
官方注解:返回序列的唯一元素,如果该序列并非恰好包含一个元素,则会引发异常.
在学习中是检索ID,正常情况下的主键不会引发异常
9.拉姆达表达式的应用-委托方法的缩写形式而已
实例:

XElement s = root.Elements("user").Where(x => x.Attribute("id").Value == dgv.SelectedRows[0].Cells[0].Value.ToString()).Single();

获取唯一元素-条件是属性为ID的值等于当前选中项的第一行第一个单元格
10.s.Rrmove()
官方注解:从节点父级中删除此节点
11.xDoc.Save(string fileName)
官方注解:将此XDocument序列化为文件
12.查询xml中所有数据

 List<User> list = new List<User>();//集合存储的是每个对象
            foreach (XElement item in xdoc.Root.Elements())
            {
                list.Add(new User() { Id = item.Attribute("id").Value, Name = item.Element("name").Value, PassWord = item.Element("password").Value });
            }

其中User是一个类,有ID,Name,Password自动属性,进行foreach时候,对每一个User对象进行赋值.
然后只需要绑定到DataSource.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值