Laden...

Forenbeiträge von Corpsegrinder Ingesamt 401 Beiträge

18.06.2008 - 11:30 Uhr

Soll denn das Fenster da bleiben, solange das "Childwindow" offen ist, oder soll sich das auch schließen, wenn der Fokus verloren geht? Wenn dem nicht so ist könntest du doch einfach beim öffnen eines solchen "Childwindow" eine Prüfvariable setzen und die halt beim verlust des Fokus abfragen, bevor du die Form schließt. Vielleicht denke ich aber auch gerade viel zu einfach^^

18.06.2008 - 07:54 Uhr

Noch eine Möglichkeit wäre eine Klasse zu erstellen, in der alle Methoden sind, die beide Klassen beinhalten sollen und davon dann die beiden anderen abzuleiten. Ist imho einfacher als der ganze andere Kram. Ob das nun so der beste Weg ist weiß ich nicht, da ich so etwas bisher nicht machen musste.

18.06.2008 - 07:49 Uhr

PS:
Was ist eigentlich aus der Sprache "D" (D++) geworden? Das hab ich auch mal drüber gelesen und lang nix mehr gehört ...

Hat sich genau wie Objective C nie durchgesetzt im Business.

Naja... schonmal was von Cocoa gehört? Das basiet auf Objective C und ist sehr aktuell. ^^

17.06.2008 - 14:13 Uhr

Ich würde es mal so versuchen:


string[] mailAddresses = MAdr.Split(";".ToCharArray());

MailMessage MyMail = new MailMessage();
MyMail.From = MFrom;

foreach(string mailAddress in mailAddresses)
{
  if(mailAddress != String.Empty)
  {
    MyMail.To.Add(mailAddress);
  }
}

MyMail.Subject = betreff;
MyMail.Body = body;


Hoffe das hilft dir weiter.

Gruß

17.06.2008 - 11:23 Uhr

Auf der Arbeit hauptsächlich MSSql Server.

Privat meistens MySql oder MS Server Express.

17.06.2008 - 11:14 Uhr

Also Paging kann man ja auch ganz einfach selber schreiben, einfach immer in der Abfrage die ersten AgezeigteElemente x SeitenZahl-1 skippen. Um die Anzahl der benötigten Seiten zu erhalten kannst du dir einfach die Anzahl aller Datensätze zurückgeben lassen udn die durch die Anzahl der angezeigten Elemente teilen. Sehe da eigentlich kein Problem.

Skippen geht mit SKIP:

http://msdn.microsoft.com/en-us/library/bb738680.aspx

Hoffe das hilft dir ein bisschen weiter.

17.06.2008 - 11:05 Uhr

Also wenn du testen möchtest, ob eine Mail angekommen ist solltest du einfach gucken, ob eine mail vom Mailerdaemon kommt. So eine Mail kommt immer, wenn eine Mail nicht zugestellt werden konnte. Mir wäre keine Möglichkeit bekannt eine Empfangsbestätigung vom Server zu erhalten.

17.06.2008 - 09:38 Uhr

Ich würde auf die Lesebestätigung verzichten, die viele Mailclients diese von vornherein ignorieren, bzw. viele User die automatische Bestätigung ausgeschaltet haben.

17.06.2008 - 09:29 Uhr

Gibt es einen besonderen Grund, warum du mehrere Threads vermeiden möchtest? Imho machen Threads die ganze Sache um einiges leichter und in .Net sind die ja auch recht einfach zu verwenden.

06.06.2008 - 13:18 Uhr

Also ich habe zwar auch keine Erfahrung mit 3D-Anwendungen, aber DirectX Rendert immer nur den sichtbaren Bereich (zumindest sollte es das 😄). Also müsstest du dich um die teilweise Darstellung schonmal nicht kümmern.

In Programmen wie 3dsmax u.Ä. werden Terrains häufig mit Heightmaps erstellt, was nicht nur schnell, sondern auch einfach geht. Es ist definitiv möglich das auch in DX zu machen, jedoch habe ich keine Ahnung, wie sich das auf die Performance auswirkt.

Da du ja schreibst, dass du noch keine große Ahung davon hast würde ich dir Empfehlen erstmal mit den Grundlagen anzufangen. Schau dir doch mal das Buch an:

Managed DirectX und C#. Einstieg und professioneller Einsatz

Gruß

Corpsegrinder

06.06.2008 - 10:37 Uhr

Im aktuellen dotnet Magazin ist ein Artikel über F#. Bei Interesse einfach mal anschauen.

06.06.2008 - 10:33 Uhr

Also das einzige was ich mir vorstellen könnte, wäre dass eine Spalte der Tabelle True heisst (sehr blöder Name^^). Aber dann musste es eigtl. heißen:

SELECT DISTINCTROW Tab.Spalte FROM Tab WHERE [True]=False;

Ansonsten kann ich mir nicht vorstellen, dass dieses Query etwas zurückliefert, da True niemals False sein kann, oder hab ich da was verpasst? 😁

04.06.2008 - 16:59 Uhr

Das könnte man machen, aber damit fängt man alle Exceptions. Wenn du nur eine SocketExceptions fängst, musst du dich an andere Stelle um die weiteren kümmern. vorausgesetzt, es gibt noch potentielle andere Exceptions. Ansonsten kannst du natürlich einfach die SocketException fangen.

04.06.2008 - 16:43 Uhr

Also wenn der Socket beendet wird, aber in einem (oder mehreren) Threads noch benutzt wird bekommst du wahrscheinlich eine SocketException, was aber normal ist, wenn z.B. ein Socket beendet wird, während er noch z.B. auf ein Receive wartet. Ich weiss nicht genau, ob die Fehlercodes in Mono gleich sind, aber in .Net kann man das z.B. so überprüfen:



catch (Exception exception)
        {
          bool bExceptionIsExpectedBehaviour = false;
          // socket exception which signals that blocking call has been interrupted is expected
          // when stopping the listener
          if (exception is SocketException)
          {
            if (((SocketException)exception).ErrorCode == 10004)
            {
              bExceptionIsExpectedBehaviour = true;
            }
          }

          if (!bExceptionIsExpectedBehaviour)
          {
            System.Windows.Forms.MessageBox.Show(exception.Message);
          }
        }

09.05.2008 - 14:06 Uhr

Wenn diese Zeichenfolge eine feste größe hat könntest du einfach von hinten an x Zeichen einlesen. Falls nicht solltest du evtl. überlegen, ob du den Anfang der Zeichenfolge kennzeichnest. Das wäre zumindest meine Überlegung. Aber was genau hast du denn vor? Es kommt ja nicht häufig vor, dass man einfach was an eine .exe Datei anhängt.

09.05.2008 - 08:04 Uhr

Was erhoffst du denn zu erhalten? Und vor allem, was willst du damit machen?

23.04.2008 - 10:37 Uhr

Hi,

ich habe einen Socket, der auf dem UDP Port 514 und IpAddress.Any auf Nachrichten wartet. Wenn ich nun eine Nachricht bekomme möchte ich gerne die IP der Netzwerkkarte, auf der die Nachricht angekommen ist rausfinden. Ist das über den LocalEndPoint möglich, oder gibt es vielleicht eine andere Möglichkeit?

Gruß

Dario

14.04.2008 - 08:35 Uhr

Okay, werd ich mal probieren. Danke für deine Hilfe.

11.04.2008 - 14:42 Uhr

Hi,

vielleicht habe ich mich unklar ausgedrückt. Mein Problem ist nicht, dass das Item nicht an der richtigen Position angezeigt wird, sondern dass die Items sich weiter verschieben, wenn ich zu einem bestimmten Punkt scrolle. Ich möchte, dass man sich die Einträge ansehen kann, obwohl durchgehend neue erstellt werden. Momentan sehe ich nur, wie die Einträge an mir vorbeirauschen. ^^

Gruß

Corpsegrinder

11.04.2008 - 12:36 Uhr

Hi,

ich habe eine ListView, in die wahlweise oben, oder unten Items eingefügt werden. Nun habe ich per ListViewItem.EnsureVisible() ein AutoScrolling eingebunden, welches nur aktiv ist, wenn die Scrollbar ganz unten steht. Nun möchte ich aber, dass die Position in der ListView auch gleich bleibt, wenn ich ein Item oben einfüge. Bisher bleibt der Scrollbalken zwar stehen, aber logischerweise verschieben sich die Items nach unten. Hat jemand evtl. einen Lösungsansatz für mich?

Gruß und danke schonmal im Vorraus

Dario

edit: Achja, ich benutze .Net 2.0 (Arbeit und so) und Visual Studio 2005

09.04.2008 - 12:42 Uhr

Ich denke er möchte das Öffnen einer Datei x von einem Programm y abfangen und irgendetwas abfragen/überprüfen, bevor das Programm die Erlaubnis erhält die Datei zu öffnen. Es geht nicht um die Verfügbarkeit von Dateien.

Was hast du eigtl. genau vor?

19.03.2008 - 08:42 Uhr

Hi,

so funktioniert das ganz gut:


 private void textBox1_TextChanged(object sender, EventArgs e)
    {
      Graphics g = textBox1.CreateGraphics();
      textBox1.Width = (int)g.MeasureString(textBox1.Text, textBox1.Font).Width;
    }

14.03.2008 - 13:01 Uhr

Habs schon gelöst, danke. Das funktionierende Pattern sieht so aus:

<((script((?!</script>)(.|\n))</script)|(%((?!%>)(.|\n))%))>

Gruß

Dario

14.03.2008 - 11:24 Uhr

Hi,

ich habe folgendes Regex Pattern geschrieben: <((script((?!</script>).)</script)|(%((?!%>).)%))>

Dieses Pattern soll aus einem HTML-Dokument Scriptpassagen zur weiteren verarbeitung herausfiltern. In Expresso klappt das wunderbar, nur im Studio auf einmal nicht mehr. Kennt jemand dieses Problem und kann mir evtl. helfen?

Gruß

Dario

04.03.2008 - 12:05 Uhr

Der Grund, warum es wenige machen ist folgender:

Managed DirectX wird nicht mehr weiterentwickelt, da die Plattform für C# Spiele in Zukunft XNA sein wird.

Also entweder XNA benutzen oder C++.

21.02.2008 - 08:40 Uhr

Hi,

eine andere Möglichkeit wäre evtl. auch die Grafik am Anfang, also die mit 10k * 6k px in einer geringeren Qualität darzustellen. So spart man auch eine Menge Zeit. Je nach Zoomstufe wird dann der sichtbare Bereich einfach neu geladen und immer in etwas besserer Qualität. Vielleicht bringt das ja nochmal einen kleinen Leistungsschub.

Gruß

Dario

31.01.2008 - 13:22 Uhr

Ui stimmt, vielen Dank. Da schaut man so lange auf den Code und bemerkt soetwas grundlegendes nicht 🙂

Wenn du mir jetzt noch sagen kannst, wie ich es hinbekomme, dass mir der Designer das Fenster anzeigt, sind meine Probleme gelöst 🙂

Das VS 2005 hat das bei mir auch ab und an gemacht, aber in VS 2008 bisher noch nicht. Vielleicht ist das tatsächlich ein Bug. Lad dir einfach mal VC# Express 2008 runter und guck ob der Fehler da auch besteht.

28.01.2008 - 14:08 Uhr

Hallo Talla,

danke für den Link, das ist das, was ich gesucht habe! Nun muss ich das nur noch verstehen 😄.

27.01.2008 - 23:53 Uhr

Füge deinem Projekt einfach eine WPF User Control Library hinzu, pack alle User Controls in eigene *.xaml Dateien und binde den Namespace in deinem Projekt als Resource und dann nach in deiner Window.xaml datei ein.

24.01.2008 - 09:30 Uhr

Hi,

wie der Titel schon sagt möchte ich gerne einen Filesystem Browser in Form eines TreeView bauen. Problem ist, dass ich keine Ahnung hab, wie ich das anstellen soll. Google hat mir leider auch nicht wirklich viel geholfen. Hat jemand von euch so etwas schon gemacht und kann mir evtl. ein paar Tipps geben, wie ich das anstelle?

Danke und Gruß

Dario

24.01.2008 - 08:46 Uhr

Das geht nicht nur bei XAML. Aber was genau möchtest du denn machen? Du könntest z.B. so etwas machen:



<!-- XAML Code für einen Button und ein Grid-->

<Button Name="button1" Height="30" Width="120" Click="AddSth" />
<Grid Name="grid1" Height="100" Width="300" />

//C# Code für die AddSth Methode

private void AddSth(object sender, EventArgs e)
{
     TextBlock tb = new TextBlock();
     tb.Name = "Block";
     tb.Text = Hallo;
     grid1.Children.Add(tb);
}


Oder du willst Animationen erstellen. Dann guckst du dir am besten mal Animationen an.

22.01.2008 - 09:39 Uhr

Du könntest theoretisch immer nur den Inhalt verändern, wie z.B. bei AJAX. Die Daten z.B. in einem XML Dokument speichern, mit nem Reader öffnen und dann einfach das, was du haben möchtest in ein Frame o.Ä. parsen. Oder du nimmst gleich ne DB, was dann ja z.B. für Content Management auch nicht schlecht wäre.

Gruß

Dario

22.01.2008 - 09:02 Uhr

Okay, hab es selbst herausgefunden. Einfach die Maximale Höhe auf

((System.Drawing.Rectangle)Screen.PrimaryScreen.WorkingArea).Height

setzen.

21.01.2008 - 10:45 Uhr

Hi,

wenn ich mein Layered Window Maximiere überlappt es die Windows Taskbar. Kann man das irgendwie verhindern? Hab weder bei Google, noch hier in der Suche etwas gefunden.

Danke schonmal im Vorraus

Dario

21.01.2008 - 09:26 Uhr

So... Ich habe mir jetzt zu Testzwecken mal Vista installiert und habe hier das gleiche Problem mit dem Window. Sobald ich ein Bild öffne erscheint das Loch. Und unter Vista sind die Texte komisch bunt, normal sollten sie grau sein. Hoffe, dass mir da jemand helfen kann. Habe keine große Lust das alles wieder auf ein normales Window umzubauen.

Edit:

Yeah, hab den Fehler gefunden! Musste einfach bei dem Window, in dem ich das Bild öffne auch AllowTransparency = "True" einstellen.

16.01.2008 - 11:18 Uhr

Wenn du Transparente Windows hast werden die in Software gerendert, das ist natürlich lange net so schnell wie hardwarebeschleunigte Fenster. Daran könnt der Unterschied liegen im Verhalten zwischen Transparent und nicht Transparent.

Okay, danke dir. Dann hoffe ich mal, dass ich zumindest mein anderes Problem lösen kann. ^^

16.01.2008 - 10:39 Uhr

Dass das beschriebene Problem mit AllowTransparency zusammenhängt kann ich mir eigentlich nicht vorstellen. Ich habe nämlich ähnliches auch schon in "normalen" Window's beobachtet. Eine Lösung musste ich bisher allerdings nicht finden.

Das Problem besteht halt nicht, wenn ich AllowTransparency aus schalte.

Aber danke für deinen Beitrag. Ich werd mich gleich mal auf die Suche machen.

16.01.2008 - 09:45 Uhr

Hi,

Ich schreibe zur Zeit einen ImageViewer mit WPF. Nun habe ich 2 Probleme.

1.

Wenn ich Bilder einlese, lasse ich mir einen Ladebalken in einem neuen Fenster, welches als Dialog geöffnet wird, anzeigen. Das funktioniert auch recht gut, nur beim ersten mal dauert es ewig, bis er richtig angezeigt wird. Danach geht es immer sofort. Ich gehe also davon aus, dass es am JIT Compiling liegt.

Kann man das irgendwie umgehen?

2.

Ich lasse dann per Klick auf eines der Thumbnails ein neues Fenster öffnen, in welchem das Bild in der orig. Größe angezeigt wird. Aber an der Stelle, wo das Bild erscheinen soll ist eine Zeit lang einfach ein Loch in meinem MainWindow.

Kennt jemand dieses Problem?

Ich bedanke mich schonmal im Vorraus für eure Antworten

Gruß

Dario

edit:

Alle Fenster sind ShapeWindows, vielleicht hat es ja damit was zu tun.

edit2:

Okay, mein erstes Problem hängt definitv mit

AllowTranparency = "True"

zusammen. Eine Lösung habe ich aber leider noch nicht gefunden.

16.01.2008 - 09:31 Uhr

Hier auch mal ein Vorschlag von mir:


private BackgroundWorker _bgWorker;

private void Init()
{
            _bgWorker = new BackgroundWorker();
            _bgWorker.WorkerReportsProgress = true;
            _bgWorker.WorkerSupportsCancellation = true;
            _bgWorker.DoWork += new DoWorkEventHandler(_bgWorker_DoWork);
            _bgWorker.ProgressChanged += new ProgressChangedEventHandler(_bgWorker_ProgressChanged);
            _bgWorker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(RunWorkerCompleted);
}

private void _bgWorker_DoWork(object sender, DoWorkEventArgs e)
{
            DoSthExpensive();
}

private void _bgWorker_ProgressChanged(object sender, DoWorkEventArgs e)
{
            progressBar1.Value = e.UserState;
}

private void RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
            DoWhatever();
}

private void DoSthExpensive()
{
            while(true)
            {
                      _bgWorker.ReportProgress(0, UserState);
                      Thread.Sleep(100);
            }
}


29.08.2007 - 13:17 Uhr

Nee... in die Doku hab ich net geschaut. Hab danach in Foren etc. gesucht. Naja, nächstes mal weiß ich bescheid. 😉

29.08.2007 - 13:06 Uhr

Oh... besten dank! Hatte schon danach gesuch, aber nichts gefunden.

29.08.2007 - 12:51 Uhr

Hi...

Ich habe mal versucht folgendes Beispiel aus dem neuen Entwickler Magazin zu Compilen: Überraschend einfache Thread-Programmierung in C# mittels der BackgroundWorker-Komponente

Mein Code dazu sieh folgendermaßen aus:


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

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

        private void buttonStart_Click(object sender, EventArgs e)
        {
            backgroundWorker1.RunWorkerAsync();
        }

        private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
        {
            BackgroundWorker worker = sender as BackgroundWorker;
            AufwaendigerVorgang2(worker, e);
        }

        private void backgroundWorker1_RunWorkerCompleted()
        {
            
        }

        private void buttonStop_Click(object sender, EventArgs e)
        {
            backgroundWorker1.CancelAsync();
        }

        private void backgroundWorker1_ProgressChanged(ProgressChangedEventArgs e)
        {
            progressBar1.Value = e.ProgressPercentage;
        }

        private void AufwaendigerVorgang2(BackgroundWorker worker, DoWorkEventArgs e)
        {
            for (int i = 1; i <= 10; i++)
            {
                if (worker.CancellationPending == true)
                {
                    e.Cancel = true;
                    break;
                }
                worker.ReportProgress(i * 10);
                Thread.Sleep(1000);
            }
        }
    }
}

Nun bekomme ich aber immer eine exception und zwar, dass der BackgroundWorker keinen Fortschritt meldet. Kann mir jemand weiterhelfen?

Danke schonmal im Vorraus!

Greetz

Dario

19.03.2007 - 16:41 Uhr

ok hat funktioniert... danke^^

19.03.2007 - 16:37 Uhr

Hi...

ich habe folgendes problem.. ist eigentlich nur ne einstellungssache, aber irgendwie finde ich den punkt nummer... also ich öffne ein Settings Fenster und will solange dieses offen ist die Mainform sperren... wäre super, wenn mir da wer helfen könnte...

thx schonmal im vorraus

03.03.2007 - 23:58 Uhr

also bei programmen wie vnc geht es ja auch... wenn da jemand auf den rechner zugreift können sämtliche aktionen vom benutzer an der workstation geblockt werden... muss also irgendeine möglichkeit geben

03.03.2007 - 15:08 Uhr

danke für die schnelle antwort hat mir sehr geholfen..

03.03.2007 - 14:57 Uhr

hi...

ich hab ein großes prblem... ich bin gerade dabei einen IM zu schreiben aba finde nicht heraus, wie ich im nachrichtenfenster die nachricht per shortcut also Alt+S abschicken lassen kan... mein code bisher is das hier:


        private void richTextBox2_KeyDown_1(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Alt)
            {
                ...
            }
        }

was muss ich dem noch hinzufügen um das S mit einzubinden?

vielen dank schonmal für die hilfe...

03.02.2007 - 11:48 Uhr

hi...

ich habe folgendes problem... ich will einen bereich eines forms drucken und benutze die klasse aus dem beitrag Drucken eines Controls????

leider ist der text dann ziemlich verpixelt... gibt es da möglichkeiten die dpi zahl zu erhöhen?

danke schonmal

31.01.2007 - 00:08 Uhr

danke... habs nu hinbekommen... nu muss ich mic nur noch n bisserl mit diesem SQLHelper auseinander setzen...

30.01.2007 - 23:47 Uhr

erstmal thx für die antwort

also die datenbank is ne MSSQL DB... hmmm und wie is das nu mit der app.config... finde da im netz nicht wirklich informatives...