First() for HtmlElementCollection
本文关键字:HtmlElementCollection for First | 更新日期: 2023-09-27 18:32:05
我为模拟 List 的First()
编写了一个方法扩展,但返回的值(实际上是引用,不是吗?
HtmlElement ele = webBrowser1.Document.All.GetElementsByName("foo").First();
ele.InnerText = "hello!"; // doesn't Works. That value isn't changed. Why?
webBrowser1.Document.All.GetElementsByName("foo")[0].InnerText = "abc"; // but this does Works
这是First()
函数:
public static HtmlElement First(this HtmlElementCollection a)
{
if (a == null)
throw new ArgumentNullException();
if (a.Count == 0)
throw new InvalidOperationException();
return a[0];
}
为什么使用 Return from a.First().value = foo
不起作用,但arr[0].value = "hehe";
有效? 我该如何解决? 我需要学习如何使用退货ref
吗?
基于
这篇文章: LINQ:选择一个对象并更改某些属性而不创建新对象
var ele = webBrowser1.Document.All.GetElementsByName("foo")
.First().Select(e => { e.InnerText = "hello"; return e; });