{"id":19,"date":"2011-11-11T06:06:01","date_gmt":"2011-11-11T04:06:01","guid":{"rendered":"http:\/\/www.sfear.de\/blog\/?p=19"},"modified":"2011-11-11T06:06:41","modified_gmt":"2011-11-11T04:06:41","slug":"component-one-flexgrid-column-width","status":"publish","type":"post","link":"https:\/\/www.sfear.de\/blog\/2011\/11\/component-one-flexgrid-column-width\/","title":{"rendered":"Component One FlexGrid &#8222;column width&#8220;"},"content":{"rendered":"<p>Vorhin stand ich vor dem Problem, das mein FlexGrid beim erneuten zuweisen einer aktualisierten DataSource die vorher vom User eingestellte Spaltenbreite verwarf.<\/p>\n<p>[csharp]_flexGrid.DataSource = _dataSet;[\/csharp]<\/p>\n<p>Eigentlich klar, weil die neue DataSource ja auch ganze andere Spalten haben kann, als die alte.<br \/>\nWas aber tun wenn es genau dieselben Spalten sind?<\/p>\n<p>Das FlexGrid hat eine Methode die SetDataBinding hei\u00dft. Dieser Methode \u00fcbergibt man das DataSource Objekt sowie den Tabellennamen der DataSource. Das interessante ist hier allerdings der dritte Parameter. Setzen wir diesen n\u00e4mlich auf true wird das komplette Spaltenlayout &#8211; also auch die Breite &#8211; beibehalten.<br \/>\nDa das aber nur sauber funktioniert wenn schon eine DataSource angeh\u00e4ngt war, muss vorher noch check gemacht werden.<br \/>\n[csharp]<br \/>\n\/\/ Die erste Tabelle aus dem DataSet soll die DataSource sein<br \/>\n_dataSet.Tables[0].TableName = &#8222;Table1&#8220;;<br \/>\n\/\/ Hat das FlexGrid noch keine DataSource<br \/>\nif (_flexGrid.DataSource == null)<br \/>\n  _flexGrid.DataSource = _dataSet.Tables[0];<br \/>\nelse \/\/ ansonsten<br \/>\n  _flexGrid.SetDataBinding(_dataSet, &#8222;Table1&#8220;, true);<br \/>\n[\/csharp]<br \/>\nSei zum Schluss noch erwaehnt, dass dies bei einem DataTable Objekt nicht funktioniert. Deswegen habe ich ein DataSet genommen.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Vorhin stand ich vor dem Problem, das mein FlexGrid beim erneuten zuweisen einer aktualisierten DataSource die vorher vom User eingestellte Spaltenbreite verwarf. [csharp]_flexGrid.DataSource = _dataSet;[\/csharp] Eigentlich klar, weil die neue DataSource ja auch ganze andere Spalten haben kann, als die alte. Was aber tun wenn es genau dieselben Spalten sind? Das FlexGrid hat eine Methode [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[4],"tags":[],"_links":{"self":[{"href":"https:\/\/www.sfear.de\/blog\/wp-json\/wp\/v2\/posts\/19"}],"collection":[{"href":"https:\/\/www.sfear.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.sfear.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.sfear.de\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sfear.de\/blog\/wp-json\/wp\/v2\/comments?post=19"}],"version-history":[{"count":18,"href":"https:\/\/www.sfear.de\/blog\/wp-json\/wp\/v2\/posts\/19\/revisions"}],"predecessor-version":[{"id":79,"href":"https:\/\/www.sfear.de\/blog\/wp-json\/wp\/v2\/posts\/19\/revisions\/79"}],"wp:attachment":[{"href":"https:\/\/www.sfear.de\/blog\/wp-json\/wp\/v2\/media?parent=19"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.sfear.de\/blog\/wp-json\/wp\/v2\/categories?post=19"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.sfear.de\/blog\/wp-json\/wp\/v2\/tags?post=19"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}