Autor Beitrag
JamesPond
Hält's aus hier
Beiträge: 1



BeitragVerfasst: Fr 28.12.07 13:47 
Hallo miteinander,

ich schreibe gerade an einer XAML GUI die ihr aussehen verändern kann (SKIN)! dazu hier folgender Quellcode:


ausblenden volle Höhe C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
using System;
using System.IO;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Markup;
using System.Xml;
using Microsoft.Win32;

namespace simpleXAML
{
    public class mainWindow : Window
    {
        static String Applstartpath;
        static readXML conf;

        [STAThread]
        public static void Main()
        {
            try
            {
                //Hauptapplication
                Application xamlApp = new Application();

                //hilfsOBJEKTE belegen (READER für Language und Config)
                Applstartpath = System.Reflection.Assembly.GetExecutingAssembly().Location.Remove(System.Reflection.Assembly.GetExecutingAssembly().Location.LastIndexOf("\\"));


conf = new readXML(Applstartpath);

                //OPTIONS-VARIABLEN
                //default-werte wenn keine angegeben!
                if (conf.read("skinpath").Equals(""))
                {
                    OpenFileDialog dlg = new OpenFileDialog();
                    dlg.Filter = "Alle Dateien (*.*)|*.*";
                    if ((bool)dlg.ShowDialog())
                    {
                        conf.write("skinpath", dlg.FileName);
                    }
                }

                //SKIN wird geladen
                XmlTextReader xmlReader = new XmlTextReader(conf.read("skinpath"));
                Window win = XamlReader.Load(xmlReader) as Window;

                //EVENTs einbinden
                Button btn1 = win.FindName("btn1l"as Button;

                if (btn1 != null)
                {
                    btn1.Click += cmdSkin;
                }

                xamlApp.Run(win);
            }

            catch (Exception expn)
            {
                MessageBox.Show(expn);
            }
        }

        static void cmdSkin(object sender, RoutedEventArgs args)
        {
            OpenFileDialog dlg = new OpenFileDialog();
            dlg.Filter = "Alle Dateien (*.*)|*.*";
            if ((bool)dlg.ShowDialog())
            {
                conf.write("skinpath", dlg.FileName);
            }
            MessageBox.Show("Bitte Starten sie den Klienten erneut um die neue Skin zu laden!");
        }
    }
}



So nun seht ihr selbst; das Programm funkiooniert, aber wie bekome ich diese Statischen Variablen und Funktionen weg? ...schon klar ich muss mir ein objekt der Hauptklasse erzeugen, aber wie mache ich das von der Hauptapplication?

....bitte bitte ein paar Tipps an ein neuling ....

danke vorab Augenzwinkern
Kha
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3803
Erhaltene Danke: 176

Arch Linux
Python, C, C++ (vim)
BeitragVerfasst: Fr 28.12.07 19:30 
Mitmischer 1703
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 754
Erhaltene Danke: 19

Win 7, Debian
Delphi Prism, Delphi 7, RAD Studio 2009 Academic, C#, C++, Java, HTML, PHP
BeitragVerfasst: Fr 28.12.07 20:35 
Vom selben Autoren, mit denselben Rechtschreibfehlern... :twisted:

_________________
Die Lösung ist nicht siebzehn.