Laden...
I
Ishildur myCSharp.de - Member
Programmierer Schweiz Dabei seit 15.09.2005
Benutzerbeschreibung

Forenbeiträge von Ishildur Ingesamt 431 Beiträge

21.04.2006 - 08:12 Uhr

Ja, aber wenn ich Enter drücke, dann ist einfach die Eingabe abgeschlossen, da es sich beim Tooltip um ein einzeiliges Eingabefeld handelt!

20.04.2006 - 17:34 Uhr

Hoihoi ihr da draussen
Gibt es eine Möglichkeit, die Position einer Zelle eines DataGridView zu ermitteln? DataGridViewCell.ContentBoundings enthält leider nur die Dimension, nicht aber die Position!

20.04.2006 - 17:32 Uhr

Also, wenn ichs im Code eintippe, funktionierts wunderbar, allerdings nicht, wenn ichs im Designer eintippe!

20.04.2006 - 16:21 Uhr

Hallo zusammen,
Ich habe folgendes Problem mit meinen Tooltips und zwar kann ich den Inhalt nicht umbrechen. Die \n werden intern wohl nach \n übersetzt, was zur Folge hat, das einfach \n anstatt eine neue Zeile im Tooltip angezeigt wird.

20.04.2006 - 14:33 Uhr

Wenn ich den SQL Server-Browser aktiviert habe, dann kann ich mich korrekt verbinden, aber das muss doch auch anders gehen? Mit der IP-Adresse zum Beispiel oder einem DNS - Namen! 8o

20.04.2006 - 14:14 Uhr

Der Rechnername und der Name der Datenbank sind Identisch!

20.04.2006 - 14:10 Uhr

Ich habe noch etwas herausgefunden, allerdings kann ich mir den Grund dafür nicht erklären:

Wenn ich als DataSource "TOPHAIR/SQLEXPRESS" verwende, dann funktioniert es, aber mit localhost nicht! Versteht ihr das?

20.04.2006 - 13:54 Uhr

SqlConnectionStringBuilder strCon = new SqlConnectionStringBuilder();
strCon.DataSource = "localhost";
strCon.InitialCatalog = "TopHair";
strCon.IntegratedSecurity = false;
strCon.ConnectTimeout = 10;
strCon.UserID = "<blah>";
strCon.Password = "<blah>"";
this.sqlCon = new SqlConnection(strCon.ToString());

20.04.2006 - 10:51 Uhr

Der Server läuft im MixedMode, ist lokal installiert, keine Firewall, Default Instance

20.04.2006 - 10:38 Uhr

Irgendwie kriege ich keine Verbindung zu meinem Sql Server 2005 Express Edition! Ich kann doch mit SqlConection darauf zugreifen oder etwa nicht? 8o

19.04.2006 - 14:49 Uhr

Hallo zusammen, ich bins schon wieder! 😁
Ich hatte gerade folgenden Einfall: MessageBox sowie Tooltip verwenden ja sogenannte StockObjects, naja, auf jeden Fall nannte man Sie in der WinAPI so. Gibt es eine Möglichkeit, in C# auf diese Stockobjekte zuzugreifen?

Einen lieben Gruss Ishildur

P.S.
Ich weis, ich stelle gerade etwas viele Fragen! Das Problem ist eben, dass ich nächste Woche wieder einmal in den Militärdienst muss und mein Chef unbedingt noch etwas erledigt haben will!

19.04.2006 - 13:35 Uhr

PointToScreen()

Ja manchmal sieht man den Wald vor lauter Bäumen nicht mehr! Ich habe mich einfach so auf die Wörter "Screen" und "Client" versteift, desshalb hab ichs nicht gefunden... X(

19.04.2006 - 13:19 Uhr

Ja, das habe ich natürlich schon gesucht, aber wirklich nicht gefunden, zu welcher Klasse gehört denn diese Methode?

Ach ja, ich habe noch eine zweite sehr grundlegende Frage, die ich irgendwie nicht kapiere! Was ist der Unterschied zwischen "override" und "new"? Ich meine ist schon klar, override "überschreibt" und new "versteckt" aber wie wirkt sich das unterschiedlich aus?

19.04.2006 - 13:07 Uhr

Hallo zusammen, gibt es irgendeine Möglichkeit, die Daten eines Forms in die Screenkoordinaten umrechnen zu lassen, oder muss ich das selber implementieren!

In der WinAPI gabe es dafür die Funktion ClientToScreen in der User32.dll

19.04.2006 - 11:12 Uhr

Huch!!! Ich habe mich wohl ziemlich falsch ausgedrückt! Ich möchte das Child Form mit dem Owner Form verschieben lassen. Sprich, wenn sich das Owning Form verschiebt, sollen sie seine Child - Forms mitverschieben! Bei Controls geht das Natürlich einwandfrei aber mit ChildForms ist wohl komplizierter?

19.04.2006 - 10:30 Uhr

Guten Tag allerseits
Ich habe ein Parent und ein Child - Fenster. Nun möchte ich, dass sich das Child mit dem Parent verschiebt! Gibts da schon etwas oder muss ich das selber implementieren?

Gruss Ishildur

19.04.2006 - 09:40 Uhr

Hallo zusammen, sagt mal, kann ich eigentlich einem Delegate mehrere Events zuordnen?

18.04.2006 - 22:44 Uhr

So einfach? 8o Wer hätte das gedacht? 😁
Nein, danke dir Herbivore!

Es hört sich vielleicht etwas komisch an, aber gibts möglicherweise eine definierte Exception für einen leeren String, wo eigentlich keiner sein sollte? Ich werfe dann immer eine ArgumentNullException, aber ich weiss nicht, obs da nicht was passenderes gäbe...

18.04.2006 - 22:25 Uhr

Guten Abend allerseits, sagt mal, wisst ihr ob ich irgendwie herausfinden kann, ob ein Form gerade mit Show angezeigt wird oder nicht? Ich muss das in einem Property ermitteln!

18.04.2006 - 14:13 Uhr

Ich habe nun versucht, SQL Express auf einem NigelNagelNeu aufgesetzten WindowsXP zu installieren: Keine Chance! 🤔

18.04.2006 - 11:48 Uhr

Ja das Problem ist eben, dass ich ein ganz Ahnliches Tool wie dasjenige, das ich nun machen soll, bereits einmal gemacht habe und ich das meisste von dort herausnehmen kann! Allerdings habe ich dort überall die Nativen SQL - Klassen benutzt...

18.04.2006 - 11:33 Uhr

Wie ich vermutet habe, wimmelt es in der Registry nur so von Einträgen auf den Sql Server 2005 und an Pfade, die überhaupt nicht mehr exisiteren!
Wenn ich an Windows etwas hasse, dann die Tatsache, dass so etwa 1 von 900 Programmen korrekt deinstalliert wird! 🙄

18.04.2006 - 11:30 Uhr

Also ich weiss nicht... Wie soll ich das denn anstellen? Ich habe diese Liste noch nie exportiert oder sowas... X(

18.04.2006 - 11:22 Uhr

Ich habe jetzt absolut alles deinstalliert, es geht trotzdem nicht! Das wars dann wohl SQL - Express... 😜

18.04.2006 - 10:53 Uhr

@Golo Haas
Ich glaube auch, es ist für diese Situation das vernünftigste, zumal ich auf diese Weise viele meiner Komponenten aus früheren Projekten für den SQL Server 2005 wiederverwenden kann.
Allerdings habe ich folgendes Problem:

Ich möchten den SQL Express auf meinem Notebook installieren und bekome ständig folgenden Fehler:

Vom Setup für SQL Server 2005 wurden nicht kompatible Betaversionen von Visual Studio, .NET Framework oder SQL Server 2005 erkannt. Verwenden Sie... blah,blah,blah

Das Problem ist, dass ich keine solchen Komponenten mehr installiert habe. Ich habe das neueste .NET Framework 2.0.50727, das Visual Studio 8.0.50727 und keinen SQL Server! Allerdings hatte ich früher tatsächlich einen SQL - Server 2005 Beta2 Server installiert, welcher ich aber später deinstalliert hatte.

Vermutlich steht noch irgendso ein Schrott in der Scheissregistry, hat da jemand Erfahrung mit?

18.04.2006 - 09:06 Uhr

Neinnein, es müssen überhaupt nicht unbedingt *.mdb Dateien sein! Ich habe mir auch überlegt, das Ganze einfach mit DataSet.WriteXml und DataSet.ReadXml zu speichern resp. zu laden. Aber das Problem Dabei währe natürlich, dass ich immer die gesammte Datenbank in den Arbeitsspeicher laden müsste, was glaube ich nicht so eine gute Idee wäre...
Ich nehme mal an, da gibts keine Alternativen, sowie einen InProgramm Sql - Server oder sowas?

Wie sehen denn die Einschränkungen von sqlexpress aus?

18.04.2006 - 08:36 Uhr

Hallo zusammen
Ich habe eine Kundin mit einem Laptop, welche keinen Zugriff auf irgendwelche Netzwerk - Resourcen hat. Habe ich eine Möglichkeit, sowas wie eine lokale *.mdb Datei anzulegen, welche keinen Datenbankserver benötigt oder sowas?

Gruss Ishildur

16.04.2006 - 14:10 Uhr

Hallo Leute, sagt mal, gibt es für die äusserst coole WinApi - Funktion RoundRect ein Ersatz im .NET Framework?

Gruss Ishildur

13.04.2006 - 21:55 Uhr

Naja, mal angenommen. Tooltip sieht mir ein wenig zu "langweilig" aus und ich möchte das Ding selber zeichnen? Von welcher Klasse sollte ich erben? Vielleicht von Control. Aber wie beende ich dann das Control? Ein Close hat es jedenfalls nicht!

13.04.2006 - 21:27 Uhr

Hallo zusammen, ich habe folgende Situation:
Ich muss in meinem Programm von Zeit zu Zeit einen Hinweis ablegen und möchte dem Benuzter dabei nicht jedesmal eine nervenden Messagebox zumuten. Was ich bräuchte wäre sowas wie ein Tooltip aber mit einer etwas anderen Logik, etwa so:

Tooltip.Show("hali halo",50,50,3000);

Gibts sowas schon, oder muss ich mir da selbst was zusammenwursteln? Das Hauptproblem von Toltip ist, dass man es einem Control zuweisen muss, ich möchte es aber unabhäning irgendwo im Form plazieren...

Gruss Ishildur

11.04.2006 - 16:52 Uhr

You, bitte sag mir, wie ich mit SQL einzelne Datensätze sperren kann, ohne ein zusätzliches Feld nalegen zu müssen! 8o Gibts da tatsächlich für diesen Zweck bestimmte Kommandos?

11.04.2006 - 16:28 Uhr

Hallo zusammen
Ich habe heute den gesammten Nachmittag damit verbracht, mich über Transaktionen schlau zu machen. Leider habe ich dabei nichts gefunden, das mich wirklich überzeugen konnte.

Also ich habe folgende finale Anforderung:
Wenn ich meine Personenliste im DataGridView anzeige, dann will ich, dass alle, welche momentan gerade von einem anderen Benutzer bearbeitet werden, in rot erscheinen. Wenn ich in der Tabelle ein zusätzliches Feld anlege, in welchem ich speichere, ob der aktuelle Datensatz gerade bearbetet wird, dann ist das kein Problem, ich frage mich allerdings, ob es da nicht eine Lösung aus dem Hause Microsoft gibt?

Gruss Ishildur

11.04.2006 - 08:21 Uhr

Ach kommt schon, es kann doch nicht sein, dass ich der einzige Mensch auf dieser Welt bin, der dieses Problem hat? 🙁

11.04.2006 - 08:20 Uhr

Neinnein, typisierte DataSet sind mir sehr, sehr unsympatisch! Das muss doch auch mit untypisierten DataSets gehen?

10.04.2006 - 22:10 Uhr

Hallo zusammen
Kann man irgendwie erreichen, dass das DataSet eine NoNullAllowedException wirft, wenn man in ein Feld einen leeren String schreibt? Wäre echt mega praktisch!

Gruss Ishildur

10.04.2006 - 16:09 Uhr

Hallo zusammen, ich möchte bei einer abgefangenen ConstraintException auslesen, welches Feld davon betroffen war! Ist das irgendwie möglich? ConstraintException.Data war leider leer! X(

10.04.2006 - 09:47 Uhr

Hallo zusammen
Also ich weis nicht so recht, wie ich die Radioboxen an mein DataSource anbinden soll. Ich habe im DataSet ein Feld mit dem Namen "Anrede", welches ein Byte als Datentyp hat. Dort kann eigentlich nur Herr oder Frau drinnstehen. Nun habe ich zwei Radiobuttons, eines Herr, eines Frau! Wie kann ich diese nun "Binden"? Also in einer Checkbox ists relativ einfach, da mache ich einfach: this.cbxAct.DataBindings.Add("Checked",this.dtaSrc,"Active");

Aber wie mache ich dies bei Radiobuttons? Natürlich haben diese ebenfalls ein Checked, an das man binden kann, aber das macht ja wenig Sinn, denn dann schreibt es nur ins DataSource zurück, wenn ich bspw. auf "Herr" geklickt habe, nicht aber, wenn ich auf "Frau" geklickt habe...

09.04.2006 - 13:50 Uhr

Ja, wie ichs selber zeichen kann, weiss ich auch, danke...

09.04.2006 - 12:20 Uhr

Hallo zusammen. Ich möchte in meiner Combobox vor jedem Eintrag ein Icon haben, ist sowas möglich und wenn ja wie?

Gruss Ishildur

09.04.2006 - 12:17 Uhr

Nochmal wegen des Singleton. Ich möchte irgendwie im Designer eine SQLConnection machen können, welche ich schliesslich im Designer in jedem Formular auswählen kann. So könnte ich diese bereits zur Entwicklungszeit den Dataadaptern zuweisen und könnte auf diese Weise die DataSet automatisch auffülllen lassen! Das würde mir sehr viel Arbeit erspahren. Weiss du, wie man das bewerkstelligen kann?

09.04.2006 - 12:01 Uhr

Hey, was ich allerdings cool finden würde, währe ein Singleton für die SqlConnection - Instanz, doch wie mache ich denn sowas? Also im Designer meine ich!

09.04.2006 - 11:55 Uhr

der dialog braucht doch nur auf die tabellen im bestehenden einzigen dataset einen entsprechenden filter zu setzen. in einer datatable geschieht dies über die Methode Select(...), im BindingSource über Filter = "...";

Dafür müssten die Informationen aber im DataSet vorhanden sein! Ich sagte allerdings, dass ich im Übersichtsdataset nur die wichtigsten 4 Felder wie bspw. Name,Adresse,Ort,Tel habe. Es werden auch nur diese Daten von der Datenbank geholt!
Im Anderen DetaildataSet hat dieselbe Tabelle nun alle 30 Felder, dafür aber nur derjenige Datensatz, welchen ich für diese Detailansicht gerade benötige! Deine Methode erfordert, dass alle 30 Felder aller 100'000 Personen gleich zu begin von der Datenbank geholt werden müssen, na dann viel Spass! Hoffentlich hast du ein interesanntes Icon für die Sanduhr! 😁

09.04.2006 - 11:30 Uhr

weil der Designer es nicht zulässt, dass man vererben kann,

Das hört sich so an, als ob das was guten wäre, aber könnte es nicht einfach sein, dass dies schlicht und ergreifend ein weiterer verschissener Bug ist? Allerhand, immerhin hat das Teil über 1000 EURO gekostet! 😜

Vererbung ist das A und O von OOP! Wie kann der Designer das einfach nicht zulassen? Gehts noch? 😜

Wegen des Codes. Du kannst das einfach bei dir nachstellen: Du machst ein neues Projekt mit einem Formular, in welches du ein DataSet hineinläds. Nun verwerbst du ein Formular von diesem und erzeugst darin ein Binding - Source. Als nächstes erzeugst du im DataSet des Child - Fensters eine Tabelle und versuchts, vom BindingSource darauf zu referenzieren:

DataSource = this.dtaSet;
DataMember = <der Tabellenname>

Und schon siehst du, was ich meine!

09.04.2006 - 11:25 Uhr

Ich habe bspw. eine Datenbank mit 100'000 Personen. Jede Person hat 30 Eigenschaften. Nun habe ich ein DataGridView, in welches ich alle 100'000 Personen reinlade, allerdings nur die wichtigsten 4 Felder. Natürlich werden auch nur diese 4 Felder von der Datenbank geholt. Wenn ich nun auf eine Zeile doppelklicke, dann erscheint ein Dialog mit ausführlichen Information der betreffenden Person. Diese werden genau jetzt von der Datenbank geholt und in ein eigenes DataSet geladen. In meinen DataSets habe ich immer nur genau die Tabellen, die ich für den entsprechenden Dialog auch benötige, denn meine Datenbank hat weit über 50 Tabellen... 😉

09.04.2006 - 10:41 Uhr

Hi citizen.ron
Nein ich verwende ausschliesslich untypisierte DataSets und das Problem mit dem DataGridView habe ich so gelöst, dass ich das DataSet von Hans ausfülle. Was ich nicht so recht verstehe, ist deine Idee mit dem Singleton Wrapper: Ich habe eine MDI - Applikation, da braucht schon jedes MDI - Child sein eigenes DataSet! 😉

Es geht ja auch nicht darum, wieviele Zeilen das Auslesen der Datan benötigt, sondern darum, dass man gleichen Code auch nur einmal schreiben sollte. Was wenn ich einen Fehler entdecke, soll ich diesen dann in allen 20 oder 30 Formularen korrigieren gehen, na super. Und alles nur, weil der Designer es nicht zulässt, dass man vererben kann, was eigentlich der 1. Grundsatz von OOP ist? 🤔

09.04.2006 - 10:11 Uhr

Und wiedereinmal habe ich ein Problem mit diesem "ç%&/" Designer.
Wenn ich ein BindingSource mit einem vererbten DataSet verknüpfen möchte, dann stürzt der Designer ab.

Also ich habe eine Klasse FRM_SqlEdit, welche ein DataSet beinhaltet. Nun habe ich eine vererbte Klasse mit dem Namen FRM_PersonEdit:FRM_SqlEdit! Diese beinhaltet ein BindingSource, welches ich folgendermassen konfiguriere:

DataSource = this.dtaSet;
DataMember = "Person";

Sobald ich dies getan habe stürzt der Designer mit folgendem Fehler ab:

DataMember property 'Person' cannot be found on the DataSource.

Die Tabelle "Person" ist aber 100% vorhanden, auch lässt sich die Applikation problemlos komplilieren und läuft auch einwandfrei! 🤔 😜

Ich habs schliesslich ein wenig analysiert und habe dabei entdeckt, dass der Fehler nur dann auftritt, wenn das DataSet ein vererbtes DataSet ist. Was soll denn dass, das macht doch keinen Sinn!

Ich hoffe, man kann dieses Problem irgendwie lösen, Morgen will mein Chef die ersten Resultate sehen und es läuft einfach noch gar nichts, verdammte "&%)(/"!!! X(

P.S.
Natürlich wäre es naheliegend, das DataSet einfach nicht mehr zu vererben, das Problem ist allerdings, dass FRM_SqlEdit Code beinhaltet, welches das DataSet benötigt!

06.04.2006 - 17:54 Uhr

@EvilTK

Die Werte aus den Controls werden nicht sofort sondern erst auf Anfrage in das DataSet geschrieben. z.b. wenn man zum nächsten datensatz navigiert.

Neineinein, ich habe folgendes geschrieben:

Ich habe ein TextBox mit einem Feld in einer DataTable verknüpft. Wenn ich nun etwas in die Textbox schreibe, so kann ich die Änderung in der entsprechenden DataRow sehen.

Also die Daten stehen sehr wohl im DataSet resp, in der DataRow, nur das RowState ist nicht korrekt gesetzt!

Hmm... X(
Irgendeine Idee, ist wirklich dringend!

Gruss Ishildur

06.04.2006 - 17:28 Uhr

Ich übergebe das Binding Source
this.dtaNav.BindingSource = dtaSrc;
DataRowView row = (DataRowView)this.dtaNav.BindingSource.Current;

Ich benutze im Dialog ein anderes DataSet, welches viel mehr Daten enthält, als das DataSet, welches für die Personenliste verwendet wird.

Das mit EndCurrentEdit() musst du mir nocheinmal erklähren!

06.04.2006 - 17:17 Uhr

Funktioniert einwandfrei!!! 👍 👍 👍 🙂 🙂 🙂

06.04.2006 - 17:13 Uhr

Kann ich das irgendwie verhindern, das währe wirklich sehr wichtig! Ich habe ein DataGridView welches alle Personen enthält. Wenn der Benutzer nun auf eine Zeile doppelklickt, erscheint ein Dialog, in welchem er die Daten bearbeiten kann. Nun ist es aber so, dass der Benutzer direkt im Dialog zum nächsten Datensatz springen kann, ohne dass er diesen erst schliessen und anschliessend auf den nächsten Datensatz doppelklicken muss. Es ist vom System her ähnlich wie die Ereignisanzeige in Windows. Das Problem ist nun, dass ich, bevor ich zum nächsten Datensatz gehe, den Benutzer fragen muss, ob er Änderungen speichern möchte, allerdings soll natürlich nur gefragt werden, falls der Benutzer auch wirklich etwas geändert hat.

Mfg Ishildur