c# - Bind List to DataGridView -
c# - Bind List<class> to DataGridView -
i need help on how bind list datagridview. tried utilize bindinglist<t>
still not display records in gridview. tried using list<t>
, still not work.
below code used:
public partial class form1 : form { public form1() { initializecomponent(); } private void form1_load(object sender, eventargs e) { toolclientcontroller ctrl = new toolclientcontroller(); ipaddresstextbox.text = ctrl.getipv4config(); portnumbertextbox.text = ctrl.getportnumber(); } private void browsebutton_click(object sender, eventargs e) { dialogresult result = openfiledialog1.showdialog(); if (result == dialogresult.ok) { toolmsgfiletextbox.text = openfiledialog1.filename; } } private void uploadbutton_click(object sender, eventargs e) { if (string.isnullorwhitespace(toolmsgfiletextbox.text)) { filetypeerror.seterror(uploadbutton, "please come in filename."); return; } if (!openfiledialog1.filename.contains(".txt")) { filetypeerror.seterror(uploadbutton, "file should in .txt"); return; } toolclientcontroller ctrl = new toolclientcontroller(); list<toolmessages> test = new list<toolmessages>(); toolmessages tool = new toolmessages(); tool.ispass = true; tool.toolmessagereply = string.empty; tool.toolmessagerequest = "x"; test.add(tool); messagegridviews.autogeneratecolumns = false; datagridviewtextboxcolumn col1 = new datagridviewtextboxcolumn(); col1.datapropertyname = "toolmessagerequest"; col1.headertext = "request"; messagegridviews.columns.add(col1); bindinglist<toolmessages> bind = new bindinglist<toolmessages>(test); messagegridviews.virtualmode = true; messagegridviews.datasource = bind; } }
based on code prepared simple winforms app:
public form1() { initializecomponent(); list<toolmessages> test = new list<toolmessages>(); toolmessages tool = new toolmessages(); tool.ispass = true; tool.toolmessagereply = string.empty; tool.toolmessagerequest = "x"; test.add(tool); datagridview1.autogeneratecolumns = false; datagridviewtextboxcolumn col1 = new datagridviewtextboxcolumn(); col1.datapropertyname = "toolmessagerequest"; col1.headertext = "request"; datagridview1.columns.add(col1); bindinglist<toolmessages> bind = new bindinglist<toolmessages>(test); datagridview1.datasource = bind; datagridview1.show(); }
i added datagridview1
form straight via winforms designer, initializecomponent
method looks like:
private void initializecomponent() { this.datagridview1 = new system.windows.forms.datagridview(); ((system.componentmodel.isupportinitialize)(this.datagridview1)).begininit(); this.suspendlayout(); // // datagridview1 // this.datagridview1.columnheadersheightsizemode = system.windows.forms.datagridviewcolumnheadersheightsizemode.autosize; this.datagridview1.location = new system.drawing.point(560, 57); this.datagridview1.name = "datagridview1"; this.datagridview1.size = new system.drawing.size(240, 150); this.datagridview1.tabindex = 1; // // form1 // this.autoscaledimensions = new system.drawing.sizef(6f, 13f); this.autoscalemode = system.windows.forms.autoscalemode.font; this.clientsize = new system.drawing.size(967, 399); this.controls.add(this.datagridview1); this.name = "form1"; this.text = "form1"; ((system.componentmodel.isupportinitialize)(this.gridcontrol1)).endinit(); ((system.componentmodel.isupportinitialize)(this.gridview1)).endinit(); ((system.componentmodel.isupportinitialize)(this.datagridview1)).endinit(); this.resumelayout(false); }
and seems work fine... info bound grid , ouput looks like:
which expect see, don't see real problem solution, unless post bigger piece of code on can reproduce issue experiencing.
c# winforms
Comments
Post a Comment