Laden...

Forenbeiträge von Qt21580 Ingesamt 204 Beiträge

27.09.2007 - 00:34 Uhr

Warum nimmst du nicht einfach ein DataSet
DataSet.SaveXml();-LoadXml()

Das ist am einfachsten

26.09.2007 - 10:27 Uhr

Danke für die Antworten

>>TreeView bevorzugen (für Paket in Paket) und einen ListView/ein Grid für die Artikel im Paket<<
Quasi wie den WinWxplorer, danke.

Das Model von Egeria sieht ganz gut aus nur wie kann ich anhand dieses Models
die Daten im Programm darstellen.

26.09.2007 - 00:53 Uhr

verwendetes Datenbanksystem: MS Access(Zu Testzwecken)

Hi Leute, habe ein Problem mit Beziehungen in der Datenbank.

Bei uns in der Firma haben wir folgende Aufgabenstellung:
Die Chefs wollen folgendes realisiert haben.

Eine Artikeltabelle
Eine Pakettabelle, diese beinhaltet Artikel
Eine Kombipakettabelle, diese beinhaltet eben Artikel und Pakete und diese Pakete können eben wieder Atikel enthalten.

Also die Artikeltabelle ist kein Problem, die Pakete funktionieren auch noch
aber die Tabelle (Kombipakete) krieg ich nicht hin.

Ich weiss absolut nicht wie ich die Kombipakete anfangen soll.
-> Die Beziehungen in der Datenbank
-> Tabellenaufbau
-> Programmtechnische Lösung
-> Soll ich die Kombipakete mit einem TreeView auflösen oder doch ein DataGridView nehmen?????????????????
-> Wie weiss ich anhand einer Abfrage ob es sich um einen Artikel handelt oder um eine Paket.

Vielleicht kann mir jemand helfen
Bedanke mich für jede Antwort.

19.07.2007 - 12:37 Uhr

Siehe dir diesen Link mal an, vielleicht hilfts dir weiter.
http://www.codeproject.com/useritems/TdhMarchingAnts.asp

04.07.2007 - 09:46 Uhr

Ich werd mein Glück nochmal versuchen
Danke....

04.07.2007 - 09:35 Uhr

Wie gesagt, wenn ich einen Hacken bei einem ChildNode einen Hacken setze sollen alle übergeordneten Nodes(Root) markiert werden.
Wenn ich dann den Hacken von einem RootNode wieder weggebe sollen alle untergeordneten ChildNodes auch davon betroffen sein.
Wie bei der Istallation vom OfficePaket (ohne Root gibt es kein Child)
Ich habe beim Event After und BeforeCheckChanged etwas geschrieben nur bin ich dann in einer Endlosschleife.

04.07.2007 - 09:28 Uhr

Hi, Leute hab ein blödes TreeView Problem

Ich habe ein TreeView der zb.: so aufgebaut ist
RootNode
-ChieldNode
-ChieldNode
-ChieldNode
--ChielChieldNode
--ChielChieldNode
-ChieldNode
RootNode
-ChieldNode
--ChielChieldNode
usw...

In diesen Tree habe ich die Checkboxen eingeblendet.
und jetzt zu meinem Problem...
Wenn ich jetzt in einem RootNode einen Hacken setze sollten alle untergeordneten Knoten auch markiert sein(das funkt ja noch). Nur will ich wenn ich einen ChildNode Markiere das das nach oben hin auch funktioniert.
Also wenn ich einen ChieldNode Markiere soll der RootNode auch markiert werden, beim ChielChieldNode soll der ChieldNode und der RootNode markiert werden usw...
Also ohne RootNode gibt es keinen ChildNode(Keinen Hacken)

Ich hoffe ich habe mein Problem einigermaßen beschrieben.
Bitte um eine Hilfestellung.

26.05.2007 - 16:25 Uhr

Hi Leute

ICh habe mir das VS 2005 installiert und damit auch gleich den SQL Server 2005 Express Edition.
Ich habe jetzt folgende Frage:
Wenn ich jetzt im IE localhost eingebe werde ich nach meinen Zugangsdaten gefragt. Warum ist das so ich habe ja bei der Installation nichts eingegeben, und somit habe ich auch keine Zugangsdaten.

Kann mir da jemand weiterhelfen.

30.04.2007 - 21:16 Uhr

Hi Kovu

Ich habs so gemacht (1.1)


<?xml version="1.0" encoding="utf-8" ?>
<configuration>

   <configSections>
	<section name="dataSources"
		type="System.Configuration.SingleTagSectionHandler"/>
	
   </configSections>


	<dataSources>
		<dataSource 
		name="OLEDB für MS Access" 
		description="Anbindung an eine Access Datenbank" 
		connectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=C:\main.mdb"
		password="123456" 
		/>
	</dataSources>
</configuration>

//Name der ConfigDatei
App.exe.config

//Aufruf:
AppDomain.CurrentDomain.SetupInformation.ConfigurationFile

Auslesen der Attribute funktioniert wie bei einem XML Document.

Hoffe das hilft dir weiter.

30.04.2007 - 21:05 Uhr

Danke, winSharp93
Genau das hab ich gebraucht!!!!!!!!!!!!

30.04.2007 - 20:47 Uhr

Hi, Leute
Habe hier schon eine ganze Weile gesucht aber nicht passendes gefunden.

Meine Frage:
Es handelt sich um Interfaces oder auch abstracte Klassen.

Ist es möglich eine Schnittstelle zu bauen die verschiedene Klassen implementieren, wo ich aber auf die Funktionen zugreifen kann.


//Interface
public interface IKlasse
{
    object Klasse
    {
        get;
    }
}

public class ErsteKlasse : IKlasse
{
    public ErsteKlasse()
    {
    }

    public object Klasse
    {
        return this;
    }

    public string EinString
    {
        get{ return "ErsteKlasse"; }
    }
}

public class ZweiteKlasse : IKlasse
{
    public ZweiteKlasse()
    {
    }

    public object Klasse
    {
        return this;
    }

    public string ZweiterString
    {
        get{ return "ZweiteKlasse"; }
    }
}

Gibt es eine Möglichkeit die Funktionen der Klassen zu benutzen mittels der Schnittstelle.


    .
    .
    .
IKlasse klasse = new ErsteKlasse();
MessageBox.Show(klasse.Klasse.EinString) //Wäre schön, funkt nur leider nicht???????


klasse = new ZweiteKlasse();
MessageBox.Show(klasse.Klasse.ZweiterString) //Wäre schön, funkt nur leider nicht???????
    .
    usw...
    .

Ist es möglich sowasin der Art zu bauen.
Bei mir funkt das so nicht (Habe nur die Methoden eines objects)

Danke im voraus!!!!!!!!!!!!!!!!!!!!!

30.03.2007 - 12:16 Uhr

Wenn das Problem noch aktuell ist.
Ich habe es so gelöst

Habe mir eine BaseForm für meine Childs gebastelt wo ich die OnHandleCreated Methode überschrieben habe.

	
protected override void OnHandleCreated(EventArgs e)
{
	this.ControlBox = false;
    //this.MinimizeBox.......
	base.OnHandleCreated (e);
}

Mfg.:

16.03.2007 - 20:01 Uhr

Danke erstmal für die Antworten

Werde mir mal das Video ansehen, mal sehen vielleicht hilft's.

16.03.2007 - 16:21 Uhr

Hi Leute

Es heißt ja man wächst mit einem Projekt. Zurzeit habe ich zwar kein Projekt doch wachsen will ich trotzdem.

Habe eine Frage zum Thema Remoting, habe schon eine Weile gegoogelt und hier im Forum gesucht aber leider nichts passendes gefunden.

Folgendes Szenario schwebt mir vor:
Ich habe einen Server mit Win2000 ServerEdition
Dann habe ich noch einen Client mit WinXP
Ich möchte dann eine DesktopDB auf dem Server platzieren -> Access od. SQLite.

Ich möchte dann Daten von der DB mittels Remoting holen und wieder zurückschreiben. Über LAN funkt es ja auch, jetzt aber zu meinem Problem.
Wie kann ich über eine Internetverbindung das Realisieren, möchte also von irgendwo aus auf diese Daten zugreifen können.

Bein Win2000 Server gibt's ja die Fernwartung, funkt zwar ist aber nicht besonders schön, außerdem muss man die App auf dem Server installieren will aber nur die DB.

Wenn's mit einer DesktopDB nicht funzt wäre sowas mit einer ServerDB möglich.
(zb.: Firebird):

Mit Remoting soll man ja bekanntlich nichts übers Internet machen, dann ist das vielleicht kein so guter Lösungsansatz.

Lässt sich soetwas mit VS 2003 bewerkstelligen oder soll ich es lieber bleiben lassen.

Wäre sehr happy wenn mir jemand einen Vorschlag unterbreiten könnte, mir fehlt leider jeglicher Ansatz wie ich das ganze angehen soll.

Wenn's nicht sein soll möchte ich mich trotzdem bedanken.

05.03.2007 - 21:22 Uhr

Danke für die Antworten

Daten laden und sortieren das fukt.

Danke nochmal

05.03.2007 - 11:32 Uhr

Wie bekomme ich mit DataTable.Select("????????")
den ältesten Eintrag der Tabelle.

Datum und Uhrzeit der Erstellung stehen in einer Spalte.

04.03.2007 - 18:59 Uhr

Hi Leute

Gibt es eine Möglichkeit eine bestimmte Zeile aus einer DataTable
zurückzubekommen, in der ich vorher den Max-Wert mit der Cumpute
Methode ermittle.

Also:
object o = DataTable.Compute("Max(ID)", "");

Ich brauche dann diese Zeile, damit ich diese ändern kann.

Danke im voraus

17.02.2007 - 11:46 Uhr

Danke FZelle

Das hat auch überhaupt nichts mit Datenbanken zu tun.

Ich dachte das gehört zu den Datenbanken.

Trotzdem danke für die Antwort.

17.02.2007 - 10:35 Uhr

Hallo Regen

Genau das ist es ja was ich nicht verstehe

public class **:::{style="color: orange;"}Class1){orange}** : DatabaseObjects.DatabaseObjects  
{  
    Funktioniert auch so nicht  
    public **:::{style="color: red;"}Class1){red}**()  
    {  
    }  

    public **:::{style="color: red;"}Class1){red}**(Database objDatabase)  
    {  
        base.Database = objDatabase;  
    }  

Ohne Konstruktor Orange
Mit Konstruktor Rot

Keine Überladung für die Methode 'DatabaseObjects' erfordert '0' Argumente

Falls es jemanden interessiert hier der Link: Databaseobjects.asp

17.02.2007 - 00:38 Uhr

Hi Leute

Ich habe eine Frage zu einer Dll Datei die ich mir bei Codeproject
geladen habe.
Die Library ist in VB und ich komme mit einigen Sachen nicht ganz klar.

Habe hier einen kleine Klasse wo ich eine Kompilierfehler bekomme
den ich nicht verstehe.

Wenn ich unten stehenden Code kompilieren will
bekomme ich immer folgende Fehlermeldung.
Keine Überladung für die Methode 'DatabaseObjects' erfordert '0' Argumente

Das ist wohl irgendein Konstruktorfehler, ich weiss beim besten Willen nicht wie ich das sonst schreiben soll.

Sieht von euch jemand einen Fehler.

Bitte um Hilfe????????????????????????????????

Die Dll ist dabei.
Vielleicht wills jemand probieren.


using System;
using System.Collections;
using DatabaseObjects;
using DatabaseObjects.SQL;

namespace ClassLibrary1
{
	/// <summary>
	/// Zusammenfassung für Class1.
	/// </summary>
	public class Class1 : DatabaseObjects.DatabaseObjects
	{
		public Class1(Database objDatabase)
		{
			base.Database = objDatabase;
		}

		protected override bool DistinctFieldAutoIncrements()
		{
			return true;
		}
	
		protected override string DistinctFieldName()
		{
			return "";
		}
	
		protected override IDatabaseObject ItemInstance()
		{
			return null;
		}
	
		protected override string KeyFieldName()
		{
			return "";
		}
	
		protected override DatabaseObjects.SQL.SQLSelectOrderByFields OrderBy()
		{
			return null;
		}
	
		protected override DatabaseObjects.SQL.SQLConditions Subset()
		{
			return null;
		}
	
		protected override string TableName()
		{
			return "Suppliers";
		}
	
		protected override DatabaseObjects.SQL.SQLSelectTableJoins TableJoins(DatabaseObjects.SQL.SQLSelectTable objPrimaryTable, DatabaseObjects.SQL.SQLSelectTables objTables)
		{
			return null;
		}
	}
}

20.01.2007 - 11:07 Uhr

Danke für die Antworten

Das Problem liegt glaube ich wirklich beim Internetprovider,
der lässt mich da nicht ran.

14.01.2007 - 20:39 Uhr

Hab ich schon einige probiert

Nix funkt

14.01.2007 - 19:22 Uhr

Hi Leute

Kann mir von euch jemand sagen wie ich zu einer mySql DB eine Verbindung herstellen kann die auf einem Internetserver liegt.

Ich benutze den MySql-Connector 1.0

Auf Localhost funtzt die Verbindung, nur mit einer IP nicht.

Dieser hier funkt
Server=localhost;Database=myDatabase;Uid=root;Pwd=123456

der hier nicht
Server=IP-Adresse;Database=myDatabase;Uid=myUid;Pwd=123456
Server=Datenbankserver;Database=myDatabase;Uid=myUid;Pwd=123456

muss ich da erst eine Verbindung zum Ftp Server herstellen oder so???????
und sich dann bei der Datenbank anmelden.

bitte um Hilfe

14.11.2006 - 12:26 Uhr

Hi Leute

Kann mir von euch jemand sagen wie ich bei einer MDI Application in den Childs
die ganze Controlbox wegbekomme wenn ich das Child maximiert habe.
Mit der Eigenschaft vom Studio ControlBox.Visible = false gehts nur im normalen Fensterlayout
aber nicht im maximierten.
Habe auch eine WinAPI Funktion gefunden mit der kann ich aber nur die
einzelnen Buttons deaktivieren aber nicht ausblenden.

Bitte um Hilfe

26.10.2006 - 10:15 Uhr

Hi Leute

Habe mir den Beitrag Problem mit EventHandler
durchgelesen ich komme aber nicht darauf wie ich das auf mein Problem runterbrechen kann.

Ich habe mir den AdpProvider von SourceFrog geholt und bei diesem brauche ich jetzt ein Event beim DatenAdapter und zwar das RowUpdated.

Wie kann ich dieses Event selber schreiben damit ich die Datenbankunabhängigkeit beibehalten kann.
Kann mir von euch jemand sagen wie ich dieses Problem lösen kann.

Bin für jeden Vorschlag dankbar

25.10.2006 - 10:23 Uhr

Hallo MagicAndre1981

Was meinst du mit Zeichenstau (Zeichensatu)
Habe bisher nur immer Access DB's benutzt da hatte ich dieses Problem nicht.

25.10.2006 - 01:10 Uhr

Hi Leute

Habe ein Problem mit einer SQLITE DB und zwar kann ich kein Scharfes ß in
meinem Grid anzeigen.

zb.: Großmugl wird nach dem lesen mit dem DataReader zu Gromugl. -> warum

Kann mir einer sagen warum das so ist?????

13.10.2006 - 23:40 Uhr

Hi Leute

Kann mir von euch jemand sagen wie ich bei einer MDI Anwendung im ersten Child
die komplette Controlbox wegbekomme und in den anderen nur die Maximize und
Minimize Buttons

Also das erste Child soll man nicht schliessen oder ähnliches können, ist eine
DB-Anwendung.

Mit ControlBox = false und MaximizeBox = false gehts nicht
Habe auch schon die Api's probiert -> kein Erfolg (DeleteMenu usw... vom Codebook AdisonWesley)

Weiss nicht mehr weiter bitte um Hilfe

11.10.2006 - 02:19 Uhr

Hallo nic4x4

Das ist genau das was ich gesucht habe

Ps.: Ist nur eine kleinigkeit an der man sich die Zähne ausbeißt

11.10.2006 - 02:15 Uhr

Danke nic4x4

Werd ich gleich noch ausprobieren

11.10.2006 - 00:32 Uhr

Ich möchte ja die MainForm nicht vernichten, sondern lediglich die 2. Form anzeigen.

Ich möchte erreichen das das Menü oder auch Kontextmenü aufgeklappt wird, ich den Befehl ausführe in diesem Fall eben eine 2.Form anzeige, dann soll das Menü wieder zuklappen bloß soll zwischen aufklappen und zuklappen die Anwendung nicht blockiert werden oder zumindest soll es so aussehen als sei sie nicht blockiert.

Ps.: Ist ein bisschen doof zu erklären.

10.10.2006 - 21:58 Uhr

Hallo Leute

Ich habe ein Problem mit dem Aussehen meiner App.
Mein Problem ist folgendes...

Ich habe eine MainForm, in dieser ist eine Menübar
Wenn ich nun mit einem Menüpunkt eine zweite Form öffne in dem
viele Controls sind (Textfelder, Combos, Grids usw...) kommt es
zu diesem Schönheitsfehler das das Menü erst wieder zuklappt wenn das Formular
vollständig geladen ist. Ist nicht schön?????

Die Anwendung ist also blockiert
Wollte das ganze schon mit Threads lösen -> habe hier im Forum die Antwort bekommen das man das nicht soll. -> Threads nur für Daten nicht für die GUI.

Gibt es noch eine andere Möglichkeit dieses Problem zu beseitigen.

16.09.2006 - 00:10 Uhr

Das mit dem Auslesen der einzelnen Blöcke und dann in der DB anzulegen
hat sich erledigt.

Vorher -> SqLiteCommand cmd = new SqLiteCommand("script", conn)
Jetzt -> SqLiteCommand cmd = conn.CreateCommand();

Aber trotzdem Danke für die Antworten

15.09.2006 - 23:10 Uhr

Hallo Lord Hessia

  1. Ich möchte auch noch die Tabellen dazu anlegen und ja einige werden auch noch mit Daten gefüllt.

  2. Das auslesen der einzelnen SQL-Statements habe ich auch schon versucht,
    klappt aber leider nicht zumindest nicht mit einer SQLite DB.
    Problem: Wenn ich es so mache dann wird immer nur eine Tabelle angelegt,
    und die Vorgängertabelle gelöscht.

Fazit: Wenn ich mit meinem Script fertig bin habe ich nur die letzte Tabelle
in der DB.

Ps.: Villeicht hast du eine Antwort auf mein Problem????????????

15.09.2006 - 16:04 Uhr

Hallo alle zusammen

Ich habe da mal eine allgemeine Frage zu Datenbanken
Ich möchte eine Datenbank zur Laufzeit anlegen das funktioniert auch nur habe
ich da ein kleines Problem das sicher einige kennen werden.

Das ganze dauert natürlich seine Zeit und jetzt meine Frage, gibt es da eine
Möglichkeit diese Zeitspanne visuell anzuzeigen, zb. eine Progressbar????

Habe im Forum schon einige Zeit verbracht aber nicht wirklich etwas gefunden.
Villeicht habe ich auch nur nach den falschen Begriffen gesucht.

Ich weiß nur das dieses Problem nur mit Threads zu bewältigen ist aber wie kann ich das angehen.

Habe zum Beispiel etwas gefunden wie man eine Datei aus dem Netz holt und den
Fortschritt in einer Progressbar anzeigt, in dem Bsp.: wird das ganze über eine Schleife realisiert die in einem Thread läuft.

Ich aber habe keine Schleife
Hier ist ein Codeschnippsel:


//Datenbank erzeugen
//....
//....
//Connection Objekt erzeugen 
conn = new SqLiteConnection;
SqLiteCommand cmd;
//StreamReader erzeugen und ein SQL Script auslesen
conn.Open()
cmd = new SqLiteCommand(meinSqlScript, conn);
cmd.ExecuteNonQuery(); //Zeitaufwendig
conn.Close();

Gibt es villeicht einen EvenHandler oder Delegaten der das mit dem Fortschritt übernimmt?????

Hoffe das ich das ganze mit der Erklärung hinbekommen habe.
Villeicht kann jemand helfen oder einen Tip geben wie man sowas macht.

13.09.2006 - 20:49 Uhr

Danke nochmal für die Antworten

Hallo Dexter
Was meinst du mit ISynchronize-Object und dann Invoken
Hast du dazu villeicht ein paar Codezeilen.

Mfg.:

13.09.2006 - 13:16 Uhr

Wow, Danke für die schnellen Antworten.

Ich kann deiner Antwort nicht ganz folgen herbivore
Ich habe eine Db-App -> das laden der Daten von der DB in eine extra Klasse auslagern ist noch klar,
aber dann kann ich nicht mehr so ganz folgen, kannst du mir das vielleicht nocheinmal erklären.

Mfg

13.09.2006 - 11:59 Uhr

Hallo zusammen

Ich habe eine Frage zu Threads.
Ich weiß das es zu diesem Thema Hunderte Einträge im Forum gibt,
habe aber bis jetzt noch nicht das richtige gefunden.

Ich möcht folgendes machen: und zwar das Öffnen eines zweiten Formulares.
Das laden des Formulares ist sehr Zeitintensiv und es sieht nicht besonders
schön aus wenn man das Formular in der Menüleiste aufruft und das Untermenü
dann für 5 Sekunden offen bleibt bevor etwas geschieht.
Habe hier einen Beitrag gelesen das das mit ShowDialog () funkt,
stimmt auch kann ich aber leider nicht gebrauchen.

Ich brauche so etwas in der Art


Thread t = new Thread(new ThreadStart(this.ShowWindow));
t.Start();

private void ShowWindow()
{
    Form2 f = new Form2();
    f.Show();                   //Das funkt leider nicht, habe nur ein kurzes Flackern
    Application.Run(f);      //Das funkt zwar, so macht man es aber nicht oder.
}

Dann habe ich viele Themen gelesen die mit Invoke und Delegaten zu tun haben,
diese betreffen aber nur Controls oder lieg ich da falsch.

Das Thema von herbavoire mit dem TreeView ist sehr gut aber wie kann ich das in meinem Fall einsetzen.

Vielleicht kann mir da jemand einen kleinen Schupps geben wie ich da weiterkomme.

10.09.2006 - 21:32 Uhr

Hallo Forum

Ich benutze die "ADO.NET Data Provider for SQLite" Version 0.21 von Finisar

Kann mir jemand sagen warum ich mit einem simplen "SELECT * FROM myTable"
keine Daten aus einer Sqlite DB bekomme.

PS.: In der Tabelle stehen Daten?????????????????????????

Das INSERT funkt nur kann ich die daten nicht abrufen

Gibt's vielleicht einen anderen ADO.NET Data Provider

Bitte um Hilfe

07.09.2006 - 08:51 Uhr

Hallo ikaros

Genau das ist mein Problem

Das 1.Projekt ist eine exe und keine dll.
Wenn ich dann eine Referenz auf die exe hinzufügen will mekert das Studio,
das daß nicht funkt und so.......

Kannst du mir villeicht noch einen Tipp geben wie ich das angehen kann, habe keine dll??????????????

06.09.2006 - 20:33 Uhr

Hallo herbivore

Danke erstmal für deine Antwort

Das daß mit den Erben von Forms funkt weiss ich (in einem Projekt),
aber wie funktioniert das ganze bei zwei Projekten in einer Projektmappe.
Das krieg ich nicht auf die Reihe?????????

Zb.: Habe eine Projektmappe Namens HelloWorld
Meine erste App in der Mappe heißt HelloWorld_Standard
Dann erstelle ich ein neues Projekt in der Mappe dieses Heißt dann HelloWorld_Pro -> Wie kann jetzt HelloWorld_Pro alles von HelloWorld_Standard erben.

05.09.2006 - 20:26 Uhr

Hallo zusammen im Forum

Ich hätte da mal eine wahrscheinlich ganz blöde Frage

Kann man von einer fertigen App eigentlich erben

Bsp: Habe eine fertige App -> möchte diese jetzt erweitern -> füge eine neues Projekt in die Mappe ein -> kann das neue Projekt vom der alten App jetzt formulare und Klassen erben.

Ich habs versucht mit Geerbtes Formular bekomme aber immer eine Fehlermeldung wie das er keinen Verweis auf diese Exe erstellen kann...

Mfg.:

03.09.2006 - 12:24 Uhr

Danke für die Antworten

02.09.2006 - 19:10 Uhr

Hallo zusammen

Ich habe ein riesiges Problem mit einer Grafik.
Ich möchte folgendes realisieren:

Ich mache einen Snapshot von einem Formular, in diesem Formular möchte
ich nun ein Rechteck ziehen und mir den markierten Ausschnitt in das Clipboard holen.

Das funktioniert alles bis auf den Ausschnitt kopieren.
Kann mir da von euch jemand helfen.

Ps.: Ich glaube mit dem AdobeReader kann das machen.

Danke im Voraus?????????????????????????

11.07.2006 - 21:45 Uhr

Ich weiss nicht ob das hilft (Arbeite noch mit VS 2003)


DataRowView drv = (DataRowView) MeinCurrencyManager.Current;
if(drv.Row.RowState != DataRowState.Detached)
{
    Textbox auf ReadOnly setzen
}

Das ganze würde ich bei CurrencyManager_PositionChanged machen.

mfg.:

10.07.2006 - 20:17 Uhr

Hallo Markus


		public GenericPrincipal GetLoginName(string strName)
		{

			DataRow[] drRows = null;
			string sBenutzer = "";

			try 
			{
				drRows = ds.Tables[0].Select("LoginName = '" + 
					strName + "'");

				foreach(DataRow row in drRows)
				{
					if (drRows.Length > 0 && drRows.Length < 2) 
						sBenutzer = row["Vorname"].ToString() + " " + row["Nachname"].ToString();
				}

				// Rückgabe von Benutzer
				GenericIdentity GenIdentity = new GenericIdentity(sBenutzer);

				// String in eine Array aufnehmen
				string[] Benutzer  = { sBenutzer, "" };
				GenPrincipal = new GenericPrincipal(GenIdentity, Benutzer);			return GenPrincipal;
			} 
			catch{}


		}

Aus der MSDN
GenericPrincipal-Objekte stellen alle von Windows-Domänen unabhängigen Benutzerautorisierungsschemas dar.

09.07.2006 - 20:12 Uhr

Hallo Markuss21

Ich nabe das so gelöst


using System.Security.Principal;
using System.Threading;
using System.IO;
using System;
using System.Data;
using System.Data.OleDb;
using System.Windows.Forms;

	/// <summary>
	/// Zusammenfassung für Benutzer.
	/// </summary>
	public class Benutzer
	{

		private string pfad = System.Windows.Forms.Application.StartupPath + "\\DB.mdb";

		private string SqlStr = "SELECT p.[PersonalID], p.[PersonalNr], p.[Vorname], " +
			"p.[Nachname],p.[LoginName], p.[xKennwort], p.[Zugang] " +
			"FROM Personal p";

		private OleDbConnection conn = new OleDbConnection();
		private OleDbDataAdapter da;
		private DataSet ds;

		GenericPrincipal GenPrincipal;

		#region Benutzerdaten prüfen

		public bool CheckUser(string strName, string strPassword)
		{
			DataRow[] drRows;
			bool ret = false;

			try 
			{
				// Überprüft Gross und Kleinschreibung
				//ds.Tables[0].CaseSensitive = true;

				drRows = ds.Tables[0].Select("LoginName = '" + 
					strName + "' and xKennwort = '" + strPassword + "'");

				// Es dürfen nicht 2 Benutzer den selben Namen haben
				if (drRows.Length > 0 && drRows.Length < 2) 
				{
					ret = true;
				}
				else
				{
					ret = false;
				}
			} 
			catch{}

			return ret;
		}

		#endregion

		//Constructor
		public Benutzer()
		{
			try
			{
				conn.ConnectionString = "Provider=Microsoft.Jet.OleDb.4.0; Data Source=" + pfad + ";Jet OLEDB:Database Password=123456";
				da = new OleDbDataAdapter(SqlStr, conn);
				ds = new DataSet();
				conn.Open();
				da.Fill( ds, "Zugangsdaten" );
			}
			catch(Exception e)
			{
				MessageBox.Show(e.Message);
			}
			finally
			{
				conn.Close();
			}
		}
}




//Aufruf der Klasse
Class.Benutzer objUser = new Class.Benutzer();
GenericPrincipal GenPrincipal;

if (objUser.CheckUser(txtBenutzer.Text.ToString(), txtKennwort.Text.ToString()))
{
    // Mache irgendetwas
}
else
{
    // Sie sind nicht berechtigt das Programm zu benutzen!!!!
}

Ist villeicht umständlich aber es funktioniert
Da kannst du zb. noch mehr einbauen wie zb.
Zugriffsberechtigung oder Sperrung wenn Kennwort 3x falsch usw.:

Ps.: Ist nur ein Ausschnitt aus dem Code, habe villeicht etwas vergessen.
Gehört noch optimiert

Ich hoffe das hilft dir weiter

16.05.2006 - 13:15 Uhr

Hallo Kostas

Weiss nicht ob dir das weiterhilft


		private void button1_Click(object sender, System.EventArgs e)
		{
			object d = oTest(123);
			MessageBox.Show(d.ToString());
		}

		private object oTest(object val)
		{
			string menge = "10";
			return (val != null) ? menge : DBNull.Value.ToString();
		}

16.05.2006 - 10:27 Uhr

Hallo Kostas

Soweit ich weiß nennt sich diese Schereibweise eine Bedingte Zuweisung.

Beispiel
<Variable> = <Bedingung> ? <Wert1> : <Wert2>;
oder


private bool Check(int a, int b)
{
    return (a<b) ? true : false;
}

Ps.: Ich habe diese Art von Schreibweise selbst noch nie verwendet.

16.05.2006 - 10:18 Uhr

Hallo

Ich gabe hier im Forum gelesen das SQLite eine gute DB sein soll.
Ich kenne diese DB aber nicht.

Habe mir diesen SQLite Adminitrator Kit geholt, der ist zwar recht schön und einfach
aber kann man diese DB auch mit einem Kennwort schützen habe nichts dergleichen gefunden
und wo bekomme ich die Dll'l für die Connection für C# her und wie sieht der Connection String aus.

Ps.: Denn ich weiß nicht ob ich mit diesem MySQL-Zeugs glücklich werde.