Zum Inhalt springen

buddybubble

Mitglieder
  • Gesamte Inhalte

    10
  • Benutzer seit

  • Letzter Besuch

  1. buddybubble

    Array ... index?

    Der Index eines Elements in einer Liste/Array/etc (implementiert IEnumerable) bezeichnet die Position an der dieses Element in der Auflistung zu finden ist.
  2. Wenn man den Report über den ReportViewer zu PDF konvertiert und speichert, besteht das Problem nicht. Das ganze scheint ein bekannter Bug zu sein, Microsoft scheint aber nichts dagegen unternehmen zu können: Problem with ReportViewer 10 on TS with a screen that is not 4/3 | Microsoft Connect Bin wirklich etwas ratlos
  3. Hallo =) Ich habe folgende Situation: Wir haben ein Programm, das den ReportViewer mit der RDL 2008 verwendet. Das Programm läuft auf einem Win 2008 Server, die Benutzer greifen über ihre Terminals darauf zu. Ein Benutzer kann jetzt einen Report laden, dieser wird im ReportViewer angezeigt. Druckt der Benutzer den Report jetzt, wird die Ausgabe total zerfriemelt: Der Text ist viel zu fett und wird übereinander gedruckt. Das allerdings nur, wenn der Benutzer auf seinem Terminal keine 4:3 Auflösung hat. Bei einer 4:3 Auflösung wird alles wie gewünscht gedruckt. Hat jemand eine Idee wie man das umgehen kann? Der Report wird ganz normal über den ReportViewer gerendert, von Rendern + Drucken ohne den Viewer red ich ja noch nicht mal.... MfG
  4. Ich habe einen Workaround gefunden und gleichzeitig den Fehler genauer eingegrenzt: Der Fehler hat mit der ComboBox zu tun, die im Control angezeigt wird. Die Combobox wird über eigene seperate Tabelle gefüllt, SelectedValue wird jedoch von der Tabelle die alle anderen Daten bereitstellt gesetzt (Foreign Key etc). Das funktioniert soweit auch gut, führte aber zu oben beschriebenem Bug. Dummerweise brauche ich die ComboBox so wie sie ist, aber ich habe rausgefunden wie man den Fehler umgehen kann: Man muss einfach die Ansicht im DataGridView ändern. Sortiert man das dgv nach einer Column, tritt der Bug nicht mehr auf. Ich mache jetzt folgendes: DataSet wird gefüllt und im Dgv angezeigt. Dgv wird nach Column[0] Descending sortiert DGV wird nach Column[0] Ascending sortiert Sieht im Endeffekt genauso aus, allerdings tritt der Bug mit dem RowState dann nicht mehr auf. Ich denke dass das nichts mit meinen Daten etc. zu tun hat, sondern einfach ein Bug von .net im Zusammenspiel von DataGridView, DataSet und ComboBox ist. :upps
  5. Ich kann den Code leider nicht einfach posten: 1. Inzwischen über 800 Zeilen 2. Bestandteil eines großen Projekts, funktioniert nicht seperat 3. Denke das darf ich dank firmenpolitik etc nicht. Ich kann auch nicht einfach ein Beispiel nachbauen, das ds wird schließlich über eine MySql Db gefüllt, der geneigt Helfer müsste ja eine Datenbank mit gleichen Schema haben Ich habe den Fehler jetzt auch genau lokalisiert, ist reproduzierbar. Hier der genaue Ablauf: (savedState wird beim verlassen einer Textbox (validating event) über den RowState bestimmt (vorher ds.EndEdit()) Control wird geladen DataSet wird gefüllt und im DataGridView + Textboxen angezeigt ich verlasse die erste Zeile im dgv, 2. row wird angezeigt. Ich verlasse die zweite Row und gehe wieder in die erste Row, Row wird angezeigt. Ich verlasse die erste Zeile wieder und will eine andere Row betreten. Auf einmal hat sich der RowState von Row 1 geändert ??? Dieser Bug tritt nur bei Row 1 (also Index 0) auf und auch erst beim 2. verlassen dieser Row. Der wechsel zwischen allen anderen Rows funktioniert beliebig oft Problemlos. Der Focus verlässt das dgv übrigens nicht, es werden keinerlei Eingaben getätigt. Aber es kommt noch besser: Dieser Bug tritt nur einmal auf. Tritt er auf, hat der User die möglichkeit die Änderungen zu speichern oder zu verwerfen, was in einem ds.AcceptChanges() oder ds.RejectChanges() resultiert. Danach tritt der Bug nicht wieder auf. Es sei denn, man leert das DataSet und befüllt es erneut, dann ist wieder alles beim alten. Langsam bin ich echt ratlos und glaube an einen Bug im Framwork :upps MfG
  6. Aber ich will ja nicht auf Ebene der Textbox (dient ja nur zur Anzeige) sondern auf Datenebene (Tabelle im DataSet) arbeiten :/ Das würde gegen das Design verstoßen, für das wir uns entschieden haben
  7. Hallo. Ich arbeite an einem Control, das folgendermaßen aufgebaut ist: Links ist eine Liste (DataGridView) mit Kostenstellen, rechts textboxen, in denen Informationen zu der links gewählten Kostenstelle angezeigt werden. Einige der Textboxen sollen Änderungen erlauben, die späte gespeichert werden können sollen. Enthalten sind die Daten in einer gemeinsamen DataTable, die sich in einem DataSet befindet. Das DataSet wird beim Laden der Form automatisch gefüllt (funktioniert) Sowohl das DataGridView als auch die Textboxen sind Datengebunden, d.h. sie zeigen automatisch den aktuellen wert der aktiven Zeile im DataSet an. Wähle ich jetzt im DataGridView einen Eintrag aus, werden automatisch die Textboxen angepasst, funktioniert alles. Aber jetzt das erste Problem: Ändere ich den Text in den Textboxen wird ja automatisch eine Änderung an der DataRow im DataSet durchgeführt (lässt sich dadurch bestätigen, dass die Änderung auch im DataGridView angezeigt wird). Frage ich jetzt aber den RowState dieser Zeile ab, steht er immer noch auf Unchanged. Obwohl die Zeile eindeutig modifiziert wurde. Das konnte ich umgehen, indem ich das Validated Event der Textboxen abfange (wird geworfen, sobald der Focus eine Textbox verlassen will) und DataRow.EndEdit() ausführe. Wurden änderungen vorgenommen, so wird der RowState richtig als Modified erkannt. Wäre ja auch ok, jetzt habe ich allerdings die Anomalie, dass der RowState manchmal auch mit Modified angegeben wird, selbst wenn ich nichts eingebe und nur aus der Liste links neue Kostenstellen anzeigen lasse (aber eben nur manchmal, wenn eine Kostenstelle wiederholt angeklickt wird :confused: ). Mein Problem ist im großen und ganzen folgendes: Ich verstehe nicht, wie und wann der RowState automatisch gesetzt wird. Wird BeginEdit() automatisch aufgerufen wenn eine Textbox betreten wird, EndEdit() aber nicht automatisch beim verlassen? Wird bei einem RowEnter (auswahl einer neuen Kostenstelle im DataGridView) automatisch ein AccepChanges() ausgeführt? (würde den RowState ja auch zurücksetzen) Nochmal eine zusammenfassung der Aufgabe meines Controls (vereinfacht): Daten aus einer Tabelle anzeigen, auswahl einer Zeile im DataGridView, anzeige der Details in Textboxen. Erkennen von Änderungen über den RowState einer Row im DataSet Das kann doch nicht so schwer sein :confused: P.S.: Das ganze muss Datengebunden sein, ich darf die Textboxen nicht manuell füllen, ich darf auch keine Usereingaben abfragen um Änderungen zu erkennen. Alle Operationen müssen auf Datenebene (DataSet) ausgeführt werden. MfG buddybubble
  8. Moin =) Ich möchte ein Klassendiagramm zeichnen: Klasse 1 ruft Klasse 2 auf, woraufhin die Klase 3 aufruft. Klasse 1 übergibt Klasse 2 ein paar Daten, Klasse 2 benutzt diese dann, um ein paar Infos aus einer Datenbank zu ziehen. Diese Infos verarbeitet sie dann weiter und gibt sie als einzelne Variablen an Klasse 3 weiter. Basierend auf diesen Variablen ruft Klasse 3 dann möglicherweise auch noch mal eine Datenbank auf und gibt ein paar Daten daraus an Klasse 2 zurück. Klasse 2 würde diese Daten dann wieder verarbeiten und an Klasse 3 zurückgeben. Wie kann ich denn in einem Klassendiagramm zeigen, welche Daten/Variablen zwischen den eigenen Klassen hin und her geschoben werden? MfG Felix
  9. Moin Ich möchte die Access2010 RUNTIME über ADO steuern. Bisher habe ich keine Möglichkeit dazu gefunden (ich dachte immer, ich könnte über ADO sowieso nur Datenbanken direkt ansprechen?) Mein Abteilungsleiter ist jedoch der Meinung, dass man über ADO alle Windos Programme steuern kann... Falls das nicht geht: Gibt es eine Möglichkeit, über C# die Access Runtime zu steuern? Access 2010 ansich ist kein Problem, das kann man ganz einfach über ne weitere Library machen. Aber die Access Runtime konnte ich bisher nur steuern, indem ich die Runtime .exe aufrufe und dabei einen Parameter übergebe, der angibt, welcher Makro geladen werden soll. Über diesen Makro kann ich dann vorher definieren, was die Runtime so machen soll (etwa einen Bericht anzeigen). Leider müsste ich noch mehr Parameter an die Runtime übergeben, in einem Fall zb eine Kostenstelle, die in eine Form eingetragen wird und dann dazu verwendet wird einen Report zu erzeugen. Allerdings kann ich an die Runtime .exe keine weiteren Parameter (von dem zu verwendenden Makro abgesehen) übergeben. Daher die Idee mit ADO MfG Felix
  10. Moin Ich möchte in Access 2010 einen Report erstellen, das Problem ist allerdings, dass ich eine Zeile auf jedem Seitenkopf ausgeben will, ausser auf der ersten Seite.. Kann mir hier jemand helfen? =/ MfG

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...