Einige Probleme mit C#

Darkas

Erfahrenes Mitglied
Ich habe einige Probleme mit C#. (Ich verwende VC# 2005 Express)

1. Ich will in meinem Programm Dateien öffnen, speichern... können.
Was genau brauche ich dafür?

2. Ich will ein Hauptfenster und einige neben Fenster(nicht modal) anzeigen lassen, die sich wie z.B. in Photoshop links am Rand in einen Frame verschieben lassen.
Auch da habe ich keine ahnung wie ich das Realisieren soll.

3. Ich verwende verschiedene Dialoge (OpenFileDialog, FolderBrowserDialog) und finde aber keine Methoden, die ich verwenden kann, um einen Rückgabewert zu erhalten.

Am besten wäre es, wenn ihr mir nicht einfach die Funktionsnamen gebt, sondern eine kleine Funktion, die eine der oben genannten lösungen enthält.

mfg Darkas
 
Hi
1. Ich will in meinem Programm Dateien öffnen, speichern... können.
Was genau brauche ich dafür?
Beispiele dazu findest du unter http://msdn2.microsoft.com/en-us/library/db5x7c0d.aspx und den darin verlinkten Seiten
2. Ich will ein Hauptfenster und einige neben Fenster(nicht modal) anzeigen lassen, die sich wie z.B. in Photoshop links am Rand in einen Frame verschieben lassen.
Auch da habe ich keine ahnung wie ich das Realisieren soll.
Dazu kann ich dir grad nichts sagen. Es gibt aber unter CodeProject.com (glaub ich) ein Beispiel dazu. Wenn ich es gefunden hab, poste ich es noch.
Um solche ToolWindows zu erzeugen, musst du den BorderStyle der entsprechenden Form auf ToolBox setzen.
3. Ich verwende verschiedene Dialoge (OpenFileDialog, FolderBrowserDialog) und finde aber keine Methoden, die ich verwenden kann, um einen Rückgabewert zu erhalten.
C#:
OpenFileDialog ofd = new OpenFileDialog();
string fileName;
// weiteres Zeug zum Initialisieren
if (ofd.ShowDialog() DialogResult.OK)
{
    fileName = ofd.FileName;
}
Weitere Beispiele findest du auch unter http://msdn.microsoft.com/library/d...ystemwindowsformsopenfiledialogclasstopic.asp
 
Hi Darkas!

Willkommen im Forum!

  1. Dafür benötigst die Klassen des System.IO Namespaces. Du findest alles grundlegende zu den Klassen mit Beispielen in der MSDN, und vieles (nicht alles) weiterführende dann hier. :google: :)
    Frag einfach nach, wenn Du was nicht verstehst oder Du wissen willst, welche Arten oder Kombinationsmöglichkeiten der Persitierung von Daten, sich für ein bestimmtes Scenario am besten eignen.
  2. Das was Du benötigst nennt sich MDI (Multi Document Interface). Die Standardform dessen nennt sich SDI (Single Document Interface). Dazu findest hier einiges und auch ein Tutorial von mir (Leider noch in .NET 1.1 :().

    //Edit: Es gäbe da aber noch was anderes: Visual Studio Editor Clone V0.1a ;-)
  3. Ich denke mal Du hast noch keinen große Erfahrung mit Windows.Forms? Dann ließ dich bitte in die entsprechenden Sektionen in der MSDN dazu ein. Nur so kannst hier schnell an deine Infos kommen, indem Du dann auch gezielt Fragen stellen kannst. ;)

    Die Dialoge basieren alle auf der Form Klasse. Liegt also nahe, dass Du hier mit der Methode Form.Show( IWin32Window ) : DialogResult arbeiten kannst. :)
    Schau in die MSDN-Dokumentation der Components, dort ist alles mit Beispielen vorhanden.
    Was Du nicht verstehst, kannst hier gerne nachfragen.
 
Zuletzt bearbeitet:
Danke für die schnelle Hilfe.

@Christian Kusmanow: Stimmt, ich bin nicht sehr erfahren in C# (obwohl, eigentlich in der gesamten Windows Programmierung), aber das wichtigste ist ja auch, dass man das Programmieren selbst kapiert.

Und mir fällt grad nochwas ein: Ich brauche eine möglichkeit, den Standart Webbrowser der Users zu öffnen, und eine Website anzeigen zu lassen.

mfg Darkas
 
Und mir fällt grad nochwas ein: Ich brauche eine möglichkeit, den Standart Webbrowser der Users zu öffnen, und eine Website anzeigen zu lassen.
Dafür brauchst du eigentlich nur
C#:
Process.Start("http://www.tutorials.de");
Die Klasse findest du im System.Diagnostic Namespace. Das OS startet dann automatisch den Default-Browser
 
Gut.

Jetzt möchte ich folgendes machen:
Das Programm soll beim Doppelklick auf eine Datei mit der Endung .dgcp geöffntet werden, und das Projekt laden.

Wie kann ich bei der Installation des Programms einen Reg-Key(geht doch so, oder?) setzen der dann das ganze öffnet?
Und dann will ich natürlich noch eine Funktion Schreiben die das ganze öffnet.
 
Also das mit dem Shell hat mir nicht wirklich weitergeholfen, gibt es da nicht irgendwie eine Methode mit der ich einen Rek-Key erstellen kann, und mit dem wiederum dann das Programm aufrufe Hätte da jemand vielleicht einen Codeschnipsel dazu?

Und nochmal das mit dem MDI:
Ich habe mir die Krypton Libary Runtergeladen (hab ich irgendwo im Forum gefunden), und da genau das gefunden was ich brauche. Nur fehlt der Code dazu. Das wäre das Programm Sample Docking. Wo bekomme ich den Code dazu?
Und was mich davon auch noch interessiert: in den Anwendungen den Krypton Explorers findet man überall den Menüpunkt Visuals. Den gibt es bei VC# 2005 Express nicht, bzw.habe ich ihn nicht gefunden. Gibt es da auch noch eine Möglichkeit für mich den zu nutzen?
 
Meinst Du das evtl. das Krypton Toolkit? Ich hab mal auf die Seite geschaut und das freie Toolkit herunter geladen. Darin enthalten hast unter anderem den Krypton Toolkit 2.4.1\Bin Ordner mit den kompilierten Beispielen. Und in dem Krypton Toolkit 2.4.1\Source\Krypton Toolkit Examples Ordner findest alle Sourcen. Öffne einfach die Krypton Toolkit 2.4.1\Source\Krypton Toolkit Examples\Krypton Toolkit Examples.sln Projektdatei. ;)
 
und die MagicLibary.dll enthält dann die Klassen dazu oder?

Ich hab gelesen dass man die auch für Kommerzielle zwecke nutzen darf. Ich hoffe mal das das das ist was ich suche (von wegen MDI).

Und nochwas: wie kann ich die dll einbinden?
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück