Wenn Sie eine Gridview füllen müssen, dann müssen Sie weg von String-Verkettungen und beginnen in einer OOP denken Weg.
Grid kann mit jedem Konstrukt bevölkert werden, die IEnumerable
implementiert, so können Sie dies tun:
VB:
Dim ListOfErrors as New List(Of MyError)
C#:
List<MyError> ListOfErrors = new List<MyError>();
Wo MyError
(minimal) ist definiert wie:
VB:
Class MyError
Public Property RowNumber as Int32 = 0
Public Property Error as String = String.Empty
End Class
C#:
class MyError
{
public int RowNumber { get; set; }
public String Error { get; set; }
}
wie Sie dann Fehler finden, anstatt eine verkettete Zeichenfolge zu bauen, können Sie die Liste stattdessen füllen:
VB:
Dim AnError as New MyError
AnError.RowNumber = i
AnError.Error = "Some error"
ListOfErrors.Add(AnError)
C#:
MyError AnError = new MyError();
AnError.RowNumber = i;
AnError.Error = "Some error";
ListOfErrors.Add(AnError);
Und wenn Sie finden, Fehler gemacht, Binden Sie die Liste an die Gridview
VB:
// this will autogenerate columns for all public properties in MyError
Gridview1.AutoGenerateColumns = True
// attach List
Gridview1.DataSource = ListOfErrors
// Bind
Gridview1.DataBind()
C#:
Gridview1.AutoGenerateColumns = true;
Gridview1.DataSource = ListOfErrors;
Gridview1.DataBind();
Ich muss es mit C# –
tun :) - um ... allll-righty dann ... brb – fnostro
hoffe dies verdeutlicht, wie VB in C# – fnostro