質問: オブジェクトには様々なプロパティがあり値がセットされていますが、VSでそのプロパティの中に格納されている値を探すにはどのようにすれば良いのでしょうか? 例えばWebBrowserオブジェクトにhtmlページを読み込むと膨大なプロパティに値がセットされます。 htmlなので階層も深いです。 htmlで「data-test-value="hoge"」というattributeとvalueが記述されているとして、WebBrowserオブジェクトにセットされた後にVSでブレークポイントで止めてWebBrowserオブジェクトの中をひたすら手動で「data-test-value」と「hoge」を探していくのですが階層が深いのとプロパティが膨大なので手動で探しきれません。 せめてVSでWebBrowserオブジェクトの中から「hoge」という値(この場合string型)を検索するような方法はないでしょうか? どうぞよろしくお願い致します。 開発環境 Windows10 Visual Studio 2015 C#
回答: これでどうでしょうか? ``` string attributeName = "data-test-value"; string attributeValue = "hoge"; var elements = webBrowser1 .Document .All .OfType() .Where(element => element.GetAttribute(attributeName) == attributeValue) .ToArray(); if (elements.Length == 0) { MessageBox.Show(string.Format("'{0}={1}' はありませんでした", attributeName, attributeValue)); } else { foreach (var element in elements) MessageBox.Show(element.OuterHtml); } ```