Laden...
C
C.K.2K2 myCSharp.de - Member
Softwareentwickler Duisburg Dabei seit 21.06.2006 22 Beiträge
Benutzerbeschreibung

Forenbeiträge von C.K.2K2 Ingesamt 22 Beiträge

25.10.2012 - 13:39 Uhr

Hallo,

das mit dem serialisieren hat funktioniert.

Danke und Grüße

25.10.2012 - 10:47 Uhr

Hallo herbivore,

danke für deine Antwort.

Ich werde das mal mit serialisieren versuchen. Danke für den Hinweis.

Grüße

24.10.2012 - 18:53 Uhr

Hallo zusammen,

ich habe folgenden Code:
Kontextmenü für den Copy-Befehl:


        private void copyToolStripMenuItem_Click(object sender, EventArgs e)
        {
            TreeNode targetNode = treeViewRight.SelectedNode;

            Clipboard.SetDataObject(targetNode, false);
        }

Kontextmenü für den Paste-Befehl:


        private void pasteToolStripMenuItem_Click(object sender, EventArgs e)
        {
            TreeNode targetNode = treeViewRight.SelectedNode;

            IDataObject data = Clipboard.GetDataObject();
            if (data.GetDataPresent(typeof(TreeNode)))
            {
                TreeNode Node = (TreeNode)data.GetData(typeof(TreeNode));
                targetNode.Nodes.Add(Node);
            }
        }

Der Code funktioniert auch soweit. Der Knoten wird kopiert und auch wieder eingefügt.

Nun zu meinem Problem:
Leider gehen mir bei diesem Vorgehen alle (bis auf TreeNode.Text) Informationen verloren. Z.B: welches Icon mit dem Knoten verknüpft ist, welchen Name es hat und welche Zusatzinformationen im der Tag-Eigenschaft gespeichert sind.

Was mache ich also falsch?

Danke und Grüße

17.02.2012 - 13:14 Uhr

Danke für die Antwort.

Wenn ich den folgendermaßen ändere:


        private void btn_Login_Click(object sender, EventArgs e)
        {
            Login login = new Login();
            login.ShowDialog(this);
        }

Dann wird ja jedesmal ein neues LoginForm erzeugt und mir gehen die Werte aus den Feldern verloren. Deswegen habe ich das mit this.Hide() versucht.

Ich habe gerade festgestellt wenn ich ein Form mit ShowDialog öffne und später mit this.Close() schließe kann ich später wieder auf das Form zugreifen und die Werte stehen auch noch in den Feldern. Aber wenn ich ein Form mit Show() öffne und später mit Close() schließe ist das Form komplett zerstört und kann später nicht mehr darauf zugreifen und deswegen muss man dann mit this.Hide() arbeiten wenn man später nochmal auf das Form zugreifen möchte.

Wie kommt es zu dem Unterschied bei ShowDialog() und Show()?

17.02.2012 - 13:00 Uhr

@ chilic

Das ich Focus() und BringToFront() nicht brauche weiß ich. War wie gesagt von mir nur ein Versuch.

17.02.2012 - 12:55 Uhr

Hallo,

mit this.Hide() verstecke ich das LoginForm wieder.
Das mache ich damit ich später wieder darauf zugreifen kann.


Program.login.Activate();
Program.login.BringToFront();
Program.login.Focus()

Das war von mir ein Versuch das MainForm wieder in den Vordergrund zu holen.

Du hast Recht. Wenn ich das LoginForm über das X schließe bleibt das MainForm im Vordergrund. Und wenn ich es über this.Close() schließe bleibt es ebenfalls im Vordergrund aber bei this.Hide() verschwindet das MainForm in den Hintergrund.

Das Problem liegt also am this.Hide(). Aber Warum?

17.02.2012 - 12:26 Uhr

Hallo zusammen,

ich habe Probleme mit ShowDialog(). Ich habe auch schon nach dem Problem gegoogelt habe aber leider nichts gefunden.

Ich habe ein MainForm das einen Button hat der ein neues Fenster über ShowDialog() öffnet. Ich benutze ShowDialog() weil das MainForm in der Zeit wo das andere Fenster geöffnet ist nicht benutzbar sein soll. Wenn ich nun das neue Fenster schließe verschwindet das MainForm in den Hintergrund und bleibt leider nicht im Vordergrund.

Was mache ich falsch?

Hier der Code aus dem MainForm:


        private void btn_Login_Click(object sender, EventArgs e)
        {
            Program.login.ShowDialog(this);
            Program.login.Activate();
            Program.login.BringToFront();
            Program.login.Focus();
        }

Und hier der Code aus dem LoginForm:


        private void btn_Login_Click(object sender, EventArgs e)
        {
            this.Hide();            
            Program.osql.Activate();
            Program.osql.BringToFront();
            Program.osql.Focus();
        }

13.09.2011 - 11:28 Uhr

Hallo zusammen,

danke für die Antworten.

Ich habe das Problem hinbekommen und die Adminrechte werden auch automatisch weitergegeben. Mein Fehler lag an einer anderen Stelle. Hatte auf Grund der Fehlermeldung vermutet das es daran liegt.

Danke und Grüße

Christian

08.09.2011 - 09:31 Uhr

Hallo zusammen,

ich habe folgendes Problem.

Ich starte meine Anwendung unter Windows 7 als Administrator, dazu habe ich ein Anwendungsmanifestdatei angelegt wo ich <requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> eingetragen habe. Die Anwendung wird auch mit Adminrechten gestartet. So weit so gut. Nun rufe ich in dieser Anwendung ein neuen Prozess auf, der auch mit Adminrechten laufen soll. Leider tut er mir den gefallen aber nicht.

Gibt es eine Möglichkeit die Adminrechte zu vererben oder irgendetwas in diese Richtung?

Habe auch schon gegoogelt und folgendes gefunden, was aber leider nicht funktioniert.


System.Diagnostics.ProcessStartInfo newProcessStartUpInfo = new System.Diagnostics.ProcessStartInfo(Environment.GetEnvironmentVariable("TEMP") + "\\uninstall.exe");
newProcessStartUpInfo.Verb = "runas";
System.Diagnostics.Process.Start(newProcessStartUpInfo);

Ich hoffe ich habe mich verständlich ausgedrückt.

Danke und Grüße

Christian

29.10.2007 - 11:23 Uhr

verwendetes Datenbanksystem: Access

Hallo zusammen!

Ich fange gerade damit an mich mit Datenbanken auf Windows zu beschäftigen.

Zuvor habe ich das immer nur mit PHP und MYSQL gemacht.

Es geht darum Inhalt aus einer Datenbank in die entsprechende Textbox zu schreiben.

In PHP habe ich das bisher immer so gemacht:
[php]
$beitrag_sql = "SELECT * FROM beitrag WHERE beitrag_id = '".$_SESSION['beitrag_id']."' LIMIT 1";
$beitrag_query = mysql_query($beitrag_sql);
$erg_beitrag = mysql_fetch_array($beitrag_query);

echo "<table>";
echo "<tr><td><input type='text' name='titel' value='".$erg_beitrag['titel']."'></td></tr>";
echo "<tr><td><input type='text' name='usr' value='".$erg_beitrag['usr']."'></td></tr>";
echo "</table>";
[/php]

Wie würde der entsprechende C# Code dafür ausehen?

Ich habe schon einiges ausprobiert und bekomme auch eine Verbindung zur Datenbank und kann den Inhalt auch in einer Listox ausgeben, aber jetzt stecke ich fest.


            DataTable dt = new DataTable();
            dt = cConn.Ds.Tables["Klassen"];

            // Anzahl Datensätze ausgeben
            lblAnzahl.Text = dt.Rows.Count.ToString();

            // ListBox
            listKlassen.Items.Clear();
            foreach (DataRow dRow in dt.Rows)
            {
                listKlassen.Items.Add(dRow[2]);
            }

Ich hoffe es kann mir jemand helfen.

Danke im Voraus

C.K.2K2

17.08.2007 - 15:32 Uhr

Danke für die Hilfe!

Ich habe das jetzt folgendermaßen gemacht:


DataTable dt = new DataTable();
dt = ds.Tables["Kunden"];
dataGridView1.DataSource = dt;

17.08.2007 - 14:43 Uhr

Hallo zusammen,

ich habe gerade angefangen mit C# / ADO.NET eine Access Datenbank auszulesen und das ganze dann in einem GridView auszugeben. Leider wird aber nichts ausgegeben.

Hier mein Quellcode:


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;

namespace DB1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string constrg = "Provider=Microsoft.Jet.OLEDB.4.0; Data                   Source=XXX.mdb";

            OleDbConnection conn = new OleDbConnection(constrg);

            string sqlStrg = "SELECT * FROM Kunden";
      
            OleDbCommand cmd = new OleDbCommand(sqlStrg, conn);

            OleDbDataAdapter da = new OleDbDataAdapter(sqlStrg, conn);

            DataSet ds = new DataSet();
                       
            conn.Open();

            da.Fill(ds,"Kunden");

            conn.Close();

            DataTable dt = new DataTable("Kunden");

            dataGridView1.DataSource = dt;
        }
    }
}

Wäre super wenn jemand mir den Fehler nennen könnte.

Danke im Voraus

C.K.2K2

22.06.2006 - 10:40 Uhr

Danke für deine Hilfe! Auf so einen Hinweis habe ich gehofft! Den Rest bekomme ich jetzt so hin.

mfg

C.K.2K2

22.06.2006 - 09:46 Uhr

Moin,

Es ist für mich leider ein Problem. Ich lerne C# erst seit ein paar Wochen und es ist meine erste Programiersprache die ich lerne. Deswegen fehlen mir leider jegliche Erfahrungen und ich habe gehofft das man mir hier in dem Forum weiterhelfen kann. Ich erwarte von niemanden das er mir hier den kompletten Soursecode postet, was ich auch nicht will, aber ein paar Tipps, Hinweise oder Codeausschnitte damit ich das besser verstehe, wären schon Hilfreich und ich käme mit dem Problem weiter voran. Für euch wirkt das Problem vielleicht einfach, weil ihr programieren könnt, aber für einen Neuling wie mich, ist es schon ein Problem. Ich möchte das ganze folgendermaßen lösen: Mit einer For-Schleife von Simikolon bis Simikolon auslesen und in die entsprechende listbox schreiben und das Zeile für Zeile. Ich bekomme das aber einfach nicht hin. Außerdem ist es ein Problem das die Anzahl der Zeilen sich ändern kann.

mfg

21.06.2006 - 22:05 Uhr

Hallo zusammen!

Ich möchte den Inhalt einer CSV-Datei mit dem openfiledialog auslesen und in die entsprechende listbox speichern.


Ich mache das bisher so:
OpenFileDialog openFileDialog1 = new OpenFileDialog();

            openFileDialog1.FileName = "";
            openFileDialog1.Title = "Öffnen";
            openFileDialog1.DefaultExt = "csv";
            openFileDialog1.Filter = "Microsoft Office Excel (*.csv)|*.csv";
            openFileDialog1.InitialDirectory = "c:\\";

            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                StreamReader open = new StreamReader(openFileDialog1.FileName);

                string s;
                ArrayList a = new ArrayList();
                while ((s = open.ReadLine()) != null)
                {
                    a.Add(s);
                }
                for (int i = 2; i <= 5; i++)
                {
                    listBoxGini.Items.Add((string)a[i]);
                    listBoxChris.Items.Add((string)a[i]);
                    listBoxDario.Items.Add((string)a[i]);
                    listBoxGundC.Items.Add((string)a[i]);
                    listBoxAlle.Items.Add((string)a[i]);
                }
            }

Das klappt soweit auch alles.
Der Aufbau der CSV-Datei sieht folgendermaßen aus:
Erstellt am: 21.06.2006 21:28:20
Gini;Chris;Dario;Gini und Chris;Alle
1;13;48;23;56
12;8;4;;74
5;;52;;
;;6;;
Kosten einzeln:
18;21;110;23;130
Kosten zu zahlen:
226,17;75,83
Kosten Gesamt:
302

Mein Problem ist jetzt folgendes:
Die ersten beiden Zeilen und die letzten 6 Zeilen sollen ignoriert werden.
Die erste Zahl soll in die erste listbox, die zweite in die zweite usw.
Bei der nächsten Zeile dann von vorne.
Die Anzahl der Zeilen kann sich von Datei zu Datei ändern.

Ich hoffe das mir hier jemand weiterhelfen kann.

Danke im vorraus,

C.K.2K2

21.06.2006 - 21:49 Uhr

Danke für die Hilfe! Klappt perfekt! freu 😁

21.06.2006 - 14:23 Uhr

Das mit der Eigeninitiative ist mir schon klar, aber manchmal hängt man einfach fest und weiß nicht weiter.

Danke für den Hinweis!!!

21.06.2006 - 14:10 Uhr

Hi,

ich habe mir die SDK-/MSDN-Doku angeschaut, aber leider hilft mir das nicht weiter. Ich häng mit dem Problem irgendwie fest. 🙁

Wäre echt super wenn mir jemand helfen könnte.

Danke in vorraus und Grüße,

C.K.2K2

21.06.2006 - 13:04 Uhr

Danke für den Hinweis!

Wie kann ich denn eine vorhandende csv-Datei erweitern!

Es wäre super wenn ich ein Quellcode Beispiel kriegen könnte.

21.06.2006 - 12:46 Uhr

Hallo zusammen!

Mein Problem ist folgendes:

ich habe eine CSV-Datei die ich über den savefiledialog erstellt habe. Jetzt möchte ich, wenn ich ein zweites mal speichere das eine neue tabelle in der CSV-Datei erstellt wird wo die Daten reingespeichert werden.

Ist das möglich? ?(

Danke im vorraus,

C.K.2K2

21.06.2006 - 09:27 Uhr

@ ikaros
DANKE!!! 😁

@ alle
Vielen Dank für eure schnelle Hilfe! Es klappt hervorragend 👍!!

21.06.2006 - 00:21 Uhr

Hallo zusammen!

Ich bin neu hier und das ist mein erster Beitrag. Ich fang gerade erst mit C# an und bin noch etwas unerfahren.

Also nun zu meinem Problem:

Ich speichere mehrere Daten aus verschiedenen ListBoxen in eine CSV-Datei.
Das funktioniert auch soweit alles wunderbar. Ich mache das ganze über den savefiledialog.
Was mein Problem jetzt ist, ist das die CSV-Datei als Dateiname standardmäßig das aktuelle Datum haben soll.

Habt ihr eine Idee wie man das lösen kann?
Ich würde mich über ein Code-Beispiel oder ein paar Tipps freuen.

Danke im vorraus,

C.K.2K2