2016-12-19 5 views
0

私はC#アプリケーションでリストビューを持っています。今私は、text.Replace()メソッドを持つHTMLファイルのlistviewの値が必要です。私は、HTMLページで自分のリストビューの値を取得しようとしています。リストビューC#to html

コード:

<h5>"+ listView1.Items.ToString() +"</h5>"); 

しかし、私は私が望む結果を得ていないのです。私は値

Image of the error

は君たちが私を助けてもらえないんですか?

答えて

2

コレクションオブジェクトでToString()を使用しています。これは、コレクション内のすべてのオブジェクトを反復して、結果の連結文字列を与えることを前提としています。これはtoString()とは異なります。

クラスのToString()は、クラスが最も適切とプログラムされている文字列値を返します。 .Netフレームワークでは、ほとんどすべてのコレクション(配列、リストなど)はToString()オーバーライドを持っていないので、基本クラス(オブジェクト)を呼び出し、ToString()メソッドを実行します。ベースオブジェクトクラスのToString()メソッドは、クラスの名前を返します。その内容やその他のプロパティは返しません。

結果を得るには、コレクションオブジェクトの回りにループを作成し、一度に1つのHTMLアイテムを作成する必要があります。このサンプルコードでは、前進の方法を示しています(ただし、この特定の繰り返しストリングの連結はライブアプリケーションではお勧めできませんが、少なくともStringBuilderクラスの使用をお勧めしますが、メソッドの説明に役立ちます)。

string html = "<h5>"; 
foreach(string item in listView1.Items) 
{ 
    html += item; 
} 
html += "</h5>";